使用条件访问对 Azure 虚拟桌面强制实施 Microsoft Entra 多重身份验证

用户可以使用不同设备和客户端从任意位置登录到 Azure 虚拟桌面。 但应采取一些措施来帮助保护环境和用户的安全。 将 Microsoft Entra 多重身份验证 (MFA) 与 Azure 虚拟桌面结合使用,会在登录过程中提示用户提供除用户名和密码以外的其他形式的标识。 可以使用条件访问对 Azure 虚拟桌面强制实施 MFA,还可以配置它是应用于 Web 客户端、移动应用、桌面客户端还是所有客户端。

当用户连接到远程会话时,他们需要向 Azure 虚拟桌面服务和会话主机进行身份验证。 如果已启用 MFA,则会在连接到 Azure 虚拟桌面服务时使用它,并且会提示用户输入其用户帐户和第二种身份验证形式,这与访问其他服务的方式相同。 用户启动远程会话时,会话主机需要用户名和密码,但如果启用了单一登录 (SSO),用户将可以无缝直接登录。 有关详细信息,请参阅身份验证方法

提示用户重新进行身份验证的频率取决于Microsoft Entra条件访问自适应会话生存期策略。 虽然记住凭据很方便,但它也会降低使用个人设备的部署的安全性。 若要保护用户,可以确保客户端更频繁地请求Microsoft Entra多重身份验证凭据。 可以使用条件访问登录频率来配置此行为。

了解如何对 Azure 虚拟桌面强制实施 MFA,并根据需要在以下部分中配置登录频率。

先决条件

以下是开始使用所需的内容:

创建条件访问策略

下面介绍如何创建一个条件访问策略,要求在连接到 Azure 虚拟桌面时进行多重身份验证:

  1. 最低以条件访问管理员身份登录到 Microsoft Entra 管理中心

  2. 转到 保护>条件访问>策略

  3. 选择“新策略”

  4. 为策略指定名称。 建议组织为其策略的名称创建有意义的标准。

  5. 分配>用户下,选择已选择 0 个用户和组

  6. 在“包含”选项卡下,选择“选择用户和组”并勾选“用户和组”,然后在“选择”下选择“已选择 0 个用户和组”。

  7. 在打开的新窗格中,搜索并选择包含你的 Azure 虚拟桌面用户为组成员的组,然后选择“选择”

  8. 分配>目标资源 下,选择 未选择目标资源

  9. 对于下拉列表“选择此策略适用项”,请保留“资源(以前的云应用)”的默认值。 在“包括”选项卡下,选择“选择资源”,然后在“选择”下,选择“”。

  10. 在打开的新窗格中,根据要尝试保护的资源搜索并选择所需的应用。 根据您的情况选择相应的选项卡。 在 Azure 上搜索应用程序名称时,按顺序使用以应用程序名称开头的搜索词,而不是应用程序名称无序包含的关键字。 例如,如果要使用 Azure 虚拟桌面,需要按该顺序输入“Azure 虚拟”。 如果自行输入“虚拟”,搜索不会返回所需的应用程序

    对于 Azure 虚拟桌面(基于 Azure 资源管理器),可以在这些不同的应用上配置 MFA:

    • Azure 虚拟桌面(应用 ID 9cdead84-a844-4324-93f2-b2e6bb768d07),当用户订阅 Azure 虚拟桌面、在连接期间向 Azure 虚拟桌面网关进行身份验证,以及将诊断信息从用户的本地设备发送到服务时适用。

      提示

      应用名称以前为“Windows虚拟桌面”。 如果在显示名称更改之前注册了 Microsoft.DesktopVirtualization 资源提供程序,则应用程序将名为 Windows 虚拟桌面,其应用 ID 与 Azure 虚拟桌面相同

    • Windows Cloud 登录 (应用 ID 270efc09-cd0d-444b-a71f-39af4910ec45) ,当用户在启用 单一登录 时向会话主机进行身份验证时适用。 建议匹配这些应用与 Azure 虚拟桌面应用之间的条件访问策略,但登录频率除外。

      重要

      • 如果您通过瘦客户端连接到 Azure 虚拟桌面,请联系您的瘦客户端提供商,确认对于单点登录连接的条件访问策略,是否应使用 Windows Cloud Login

      • 不要选择名为 Azure 虚拟桌面 Azure 资源管理器提供程序(应用 ID 50e95039-b200-4007-bc97-8d5790743a63)的应用。 此应用仅用于检索用户源,而不应具有多重身份验证。

    重要

    不要选择名为 Azure 虚拟桌面 Azure 资源管理器提供程序(应用 ID 50e95039-b200-4007-bc97-8d5790743a63)的应用。 此应用仅用于检索用户源,而不应具有多重身份验证。

  11. 选择应用后,选择“选择”

    条件访问云应用或操作页面的屏幕截图。显示了 Azure 虚拟桌面应用。

  12. “分配”>“条件” 下,选择 “选择 0 个条件”

  13. 在“客户端应用”下,选择“未配置”

  14. 在打开的新窗格中,对于“配置”,选择“是”

  15. 选择此策略将适用的客户端应用:

    • 如果要将策略应用到 Web 客户端,请选择“浏览器”。
    • 如果要将策略应用到其他客户端,请选择“移动应用和桌面客户端”。
    • 如果要将策略应用于所有客户端,请同时选中这两个复选框。
    • 取消选择旧版身份验证客户端的值。

    条件访问客户端应用页面的屏幕截图。用户已选择移动应用和桌面客户端以及浏览器复选框。

  16. 选择应用此策略的客户端应用后,选择“完成”

  17. 访问控制>授予 下,选择 已选择 0 项

  18. 在打开的新窗格中,选择“授予访问权限”

  19. 选中要求进行多重身份验证,然后选择选择

  20. 在页面底部,将“启用策略”设置为“开”,然后选择“创建”。

注意

使用 Web 客户端通过浏览器登录 Azure 虚拟桌面时,日志会将客户端应用 ID 列为 a85cf173-4192-42f8-81fa-777a763e6e2c(Azure 虚拟桌面客户端)。 这是因为客户端应用在内部链接到设置了条件访问策略的服务器应用 ID。

提示

如果某些用户使用的 Windows 设备尚未注册到 Microsoft Entra ID,则他们可能会看到标题为“保持登录所有应用”的提示。 如果他们取消选择“允许我的组织管理我的设备”并选择“否,请仅登录到此应用”,则系统可能会更频繁地提示进行身份验证

配置登录频率

登录频率策略允许配置用户在访问基于Microsoft Entra的资源时需要登录的频率。 这有助于保护环境,对于个人设备尤其重要,因为本地 OS 可能不需要 MFA 或者在处于非活动状态后可能不会自动锁定。 仅当访问资源时从 Microsoft Entra ID 请求新访问令牌的情况下,才会提示用户进行身份验证。

登录频率策略根据所选的 Microsoft Entra 应用产生不同的行为:

应用名称 应用 ID 行为
Azure 虚拟桌面 9cdead84-a844-4324-93f2-b2e6bb768d07 当用户订阅 Azure 虚拟桌面、手动刷新其资源列表以及在连接期间向 Azure 虚拟桌面网关进行身份验证时,会强制重新进行身份验证。

重新身份验证时间段结束后,后台源刷新和诊断上传会以无提示方式失败,直到用户完成下一次交互式登录 Microsoft Entra。
Windows 云登录 270efc09-cd0d-444b-a71f-39af4910ec45 启用单一登录时,当用户登录到会话主机时会强制重新进行身份验证。

若要配置要求用户再次登录的时间段,请执行以下操作:

  1. 打开之前创建的策略。
  2. 访问控制>会话 下,选择 0 个控件已选
  3. 在“会话”窗格中,选择“登录频率”
  4. 选择定期重新进行身份验证每次
    • 如果选择定期重新验证,请设置时间段值;在该时间过后,当用户执行需要新访问令牌的操作时,系统会要求其重新登录,然后选择选择。 例如,如果将值设置为“1”并将单位设置为“小时”,则连接在上次用户身份验证后启动超过一小时时,将需要多重身份验证
    • 仅当为主机池启用单一登录时,才支持“ 每次 ”选项应用于 Windows 云登录 应用。 如果选择“每次”,系统会提示用户在自上次身份验证以来 5 到 10 分钟后启动新连接时重新进行身份验证
  5. 在页面底部,选择“保存”

注意

  • 仅当用户必须向资源进行身份验证且需要新的访问令牌时,才会重新进行身份验证。 建立连接后,即使连接持续的时间超过配置的登录频率,也不会提示用户。
  • 如果发生网络中断,导致在配置的登录频率后重新建立会话,则用户必须重新进行身份验证。 这可能会导致在不稳定的网络上出现更频繁的身份验证请求。

为Azure虚拟桌面启用单一登录时,连接中涉及两个Microsoft Entra应用程序:Azure虚拟桌面应用处理源订阅和网关身份验证,Windows 云登录应用处理会话主机登录。 这两个应用都需要彼此一致的条件访问策略,否则用户在意外时间看到多重身份验证提示。

配置前检查清单

在主机池上启用 SSO 之前,请完成这些检查。

验证应用注册:

  • 确认 Azure 虚拟桌面 应用(ID: 9cdead84-a844-4324-93f2-b2e6bb768d07)存在于你的租户中。
  • 确认你的租户中存在 Windows 云登录 应用(ID: 270efc09-cd0d-444b-a71f-39af4910ec45)。
  • 请勿将Azure虚拟桌面Azure 资源管理器提供程序 (ID: 50e95039-b200-4007-bc97-8d5790743a63) 添加到任何条件访问策略。 此应用仅用于源检索,不得强制实施多重身份验证。

检查冲突:

  • 列出面向所有 云应用的所有条件访问策略。 这些策略适用于Azure虚拟桌面 SSO 会话,并可能会意外阻止访问。
  • 检查是否有任何策略要求 设备符合性。 已加入 Microsoft Entra 的 Azure 虚拟桌面 会话主机可能无法满足为用户终端设计的合规策略。
  • 检查是否有任何策略应用 基于位置的限制。 对于Azure虚拟桌面应用,基于位置的策略根据用户的客户端 IP 进行评估。 对于 (SSO 到会话主机) 的 Windows 云登录应用,条件访问看到的 IP 地址可能与用户的客户端 IP 不同,具体取决于网络路由。 在强制执行之前,针对这两个应用测试基于位置的策略。
  • 验证是否没有策略阻止 Windows 云登录 应用。
  • 验证没有策略阻止Windows 365应用 (0af06dc6-e4b5-4f28-818e-e78e62d137a5) 。 Windows 应用向Azure虚拟桌面和Windows 365应用进行身份验证,即使用户只有Azure虚拟桌面资源也是如此。 阻止Windows 365 应用的条件访问策略会导致Azure虚拟桌面用户的登录失败。

禁用旧版每用户多重身份验证:

重要

如果在启用按用户配置的多重身份验证的同时使用条件访问策略,则在已加入 Microsoft Entra 的会话主机上的用户会看到“你尝试使用的登录方法不受允许”错误。 禁用每用户多重身份验证,并独占使用条件访问策略。

在 Microsoft Entra 管理中心,依次转到 “标识”>“用户”>“所有用户”,然后从工具栏中选择 “按用户 MFA”。 确认所有 Azure 虚拟桌面用户的按用户多重身份验证均处于已禁用状态。 有关更多信息,请参阅已加入 Microsoft Entra 的会话主机虚拟机

注意

条件访问策略需要Microsoft Entra ID P1 或 P2 许可,并且无法在启用安全默认值时使用。 如果租户使用安全默认值,请在创建下面所述的条件访问策略之前 禁用安全默认值

双策略结构

创建两个单独的策略,而不是一个组合策略。

策略 1 - Azure虚拟桌面服务身份验证:

设置 Value
目标应用 Azure虚拟桌面 (9cdead84-a844-4324-93f2-b2e6bb768d07)
用户 Azure虚拟桌面用户组
授予 要求多重身份验证
登录频率 根据贵组织的安全要求
客户端应用 浏览器 + 移动应用和桌面客户端

策略 2 - 会话主机 SSO 身份验证:

设置 Value
目标应用 Windows Cloud 登录 (270efc09-cd0d-444b-a71f-39af4910ec45)
用户 同一Azure虚拟桌面用户组
授予 要求多重身份验证
登录频率 达到或超过策略 1。 “每次”选项仅在此应用中受支持。
客户端应用 浏览器 + 移动应用和桌面客户端

注意

Azure虚拟桌面应用处理源订阅和网关身份验证。 启用 SSO 后,Windows Cloud 登录应用将处理会话主机登录。 两者之间的不同登录频率设置可能会导致意外时间出现多重身份验证提示。

身份验证流程

当用户连接时,将在不同点评估这两个应用:

  1. 用户的Windows 应用向Azure虚拟桌面应用进行身份验证。 策略 1 已被评估。 颁发令牌。
  2. Windows 应用 使用该令牌连接到 Azure 虚拟桌面网关。
  3. 网关通过 Windows 云登录 应用启动会话主机 SSO。 对策略 2进行评估。
  4. Windows 云登录应用为会话主机颁发Microsoft Entra令牌。
  5. 会话主机接受令牌,并且会话已准备就绪。

策略 1 控制步骤 1。 策略 2 控制步骤 3。 正确配置两者后,用户会看到单个多重身份验证提示 ((如果需要) ),并无缝地进入会话。

常见配置错误

配置错误 症状 解决方案
与条件访问一起启用的旧式每用户多重身份验证 您尝试使用的登录方式不被允许 禁用每用户多重身份验证;仅使用条件访问策略
条件访问以“所有云应用”为目标,并要求设备合规性 登录失败,因为会话主机不符合合规性策略 从“所有应用”策略中排除 Windows 云登录和 Azure 虚拟桌面 应用;创建单独的 Azure 虚拟桌面 专用策略
条件访问中缺少 Windows 云登录应用 用户两次获取多重身份验证提示,一次用于Azure虚拟桌面服务,一次用于会话主机 将 Windows Cloud 登录名添加到 SSO 条件访问策略
两个Azure虚拟桌面应用之间的登录频率不匹配 会话期间或重新连接时意外重新验证身份 使两个策略的登录频率保持一致
每次登录频率都设置在 Azure 虚拟桌面应用上,而不是 Windows 云登录上 源更新和上传诊断数据时频繁出现多重身份验证提示 每次 仅在 Windows 云登录应用上受支持

配置后验证

启用 SSO 并配置条件访问策略后:

  1. 使用 Windows 应用连接到Azure虚拟桌面。
  2. 确认你只需进行一次身份验证(如果需要,则使用多重身份验证),即可进入会话,而不会再次提示输入凭据。
  3. 在Microsoft Entra 管理中心中,转到“标识>监视 & 运行状况>登录日志”,并按测试用户进行筛选。 验证:
    • Azure虚拟桌面:状态:成功,已应用正确的条件访问策略。
    • Windows Cloud 登录:状态:成功,已应用正确的条件访问策略。
  4. 如果任一显示“失败”,请选择条目并检查“条件访问”选项卡,以确定阻止登录的策略。

如果用户仍然看到重复的登录提示,请参阅排查Azure虚拟桌面的单一登录和条件访问问题。

已加入 Microsoft Entra 的会话主机虚拟机

为成功进行连接,必须禁用旧版按用户多重身份验证登录方式。 如果不想将登录限制为强身份验证方法(如 Windows Hello 企业版),需要从条件访问策略中排除 Azure Windows VM 登录应用

后续步骤