Microsoft Entra 单点登录

Last published : Nov 13, 2026
当使用 Microsoft Entra ID 凭据访问 Microsoft Entra 混合加入会话主机上的虚拟应用程序和桌面时,您可以利用单点登录 (SSO)。
有关 DaaS,请参阅 Microsoft Entra 单点登录。

支持的基础设施

以下是 Microsoft Entra 单点登录支持的基础设施组件概述:
计算机身份 思杰 DaaS CVAD 本地部署 思杰店面云 思杰店面 思杰网关服务 NetScaler 网关
已加入 Microsoft Entra 是 否 是 否 是 是
Microsoft Entra 混合加入 是 是 是 是 是 是
注意:
在 StoreFront 中,Microsoft Entra 单点登录仅支持现代 UI 体验,不支持经典 UI 体验。

支持的访问方法

以下是 Citrix 环境中可用的访问方法:
  • 本机访问:您使用本机 Citrix Workspace 应用程序客户端访问 Citrix Storefront 并建立会话连接。
  • 浏览器访问:您通过浏览器访问 Citrix Storefront,并使用适用于 HTML5 客户端的 Citrix Workspace 应用程序连接到虚拟应用程序或桌面会话。
  • 混合访问:您通过浏览器访问 Citrix Storefront,并使用本机 Workspace 应用程序客户端连接到虚拟应用程序或桌面会话。
以下是 Microsoft Entra 单点登录支持的访问方法概述:
访问方法 视窗 林纳克斯 Mac Chrome 操作系统 安卓 iOS
本机 是 是 是 是 是 是
浏览器 是 是 是 是 是 是
混合 是 是 是 否 否 否
注意:
您必须允许弹出窗口,以便单点登录在浏览器和混合访问中正常工作。

系统要求

以下是使用 Microsoft Entra 单点登录的系统要求:
  • 控制平面:Citrix Virtual Apps and Desktops™ 2607 LTSR 或更高版本
  • 访问层:StoreFront 2607 LTSR 或更高版本
  • 虚拟投递代理 (VDA)
    • Windows:版本 2507 或更高版本
  • Citrix Workspace 应用程序
    • Windows:版本 2508 或更高版本
    • Linux:版本 2604.10 或更高版本
    • Mac:版本 2607 或更高版本
    • HTML5:版本 2603.10 或更高版本
    • Chrome OS:版本 2603 或更高版本
    • Android:版本 2511 或更高版本
    • iOS:版本 2607 或更高版本
  • 具有本机启动功能的 Web 浏览器:
  • 具有浏览器启动功能的 Web 浏览器:任何受支持的 Web 浏览器。
  • 会话主机操作系统:
注意:
仅当用户将在 Windows 或 Mac 设备中利用混合访问时,才需要 Citrix Web Extension。如果用户利用本机或浏览器访问,则不需要 Citrix Web Extension。

注意事项

  • 如果您的用户将利用混合访问,他们必须使用 Microsoft Edge 或 Google Chrome,并安装 Citrix Web 扩展。混合访问的 Microsoft Entra 单点登录不支持其他浏览器。
  • 当使用 Microsoft Entra 单点登录登录会话时,不支持自动客户端重新连接。使用此登录方法时,此功能会自动禁用。在网络中断的情况下,会话可靠性仍可用于自动重新连接。
  • 当虚拟桌面被锁定后,默认行为是显示 Windows 锁定屏幕。根据您的身份验证要求,您可能需要更改会话锁定行为。有关更多详细信息,请参阅 会话锁定行为。
  • 对于 Microsoft Entra 混合加入的会话主机,默认情况下,单点登录不适用于特权组(如域管理员)的成员。要启用此功能,请将该组或用户添加到 Microsoft Entra Kerberos 访问的只读域控制器 (RODC) 允许列表中。有关详细信息,请参阅 Microsoft Entra Kerberos TGT 和 Active Directory 访问控制。
  • Microsoft Entra 单一登录要求启用 Windows 设置 允许将自定义 SSP 和 AP 加载到 LSASS 中(默认)。请注意,如果您通过 Microsoft Intune 部署适用于 Windows 10 及更高版本的安全基线模板,则此设置将自动禁用并阻止 SSO,因此您必须更新 Intune 设备配置策略以使其保持启用状态。

如何配置 Microsoft Entra 单一登录

概述

Microsoft Entra 单一登录的配置包含以下步骤:
  1. Azure 和 Microsoft Entra ID 的配置。
    1. 创建 Kerberos 服务器对象(仅限 Microsoft Entra 混合联接环境)。
  2. Citrix 配置。
    1. 预配具有所需操作系统版本、身份类型和 VDA 版本的会话主机。
    2. 配置 StoreFront。
    3. 在您的站点中启用 Microsoft Entra 单一登录。
    4. 在您的交付组中启用 Microsoft Entra 单一登录。

微软 Azure 和 微软 Entra ID 配置

为了利用 Microsoft Entra 单一登录,您必须首先在 Microsoft Entra ID 租户中为 Windows 启用 Microsoft Entra 身份验证,这将允许颁发所需的身份验证令牌,从而使用户能够登录到已加入 Microsoft Entra 和混合加入 Microsoft Entra 的会话主机。
执行 Azure 配置的人员必须至少被分配以下 Microsoft Entra 内置角色 之一或同等角色:
配置可以通过 Azure 门户、使用 Microsoft Graph PowerShell SDK 或 Microsoft Graph API 完成。以下部分提供了通过 Azure 门户完成配置的详细信息。如果您更喜欢使用 Microsoft Graph PowerShell SDK 或 Microsoft Graph API,请参阅 Microsoft Entra 单一登录 Azure 配置。

注册 Citrix 应用程序

您必须在 Azure 租户中注册多租户 Citrix Resource 应用程序,并创建单租户 Client 应用程序。
首先,您必须注册 Citrix Resource 应用程序。为此,请使用以下同意 URL 之一:
  • 美国、欧盟、亚太地区:https://login.microsoftonline.com/common/adminconsent?client_id=3a510bb1-e334-4298-831e-3eac97f8b26c
  • 日本:https://login.microsoftonline.com/common/adminconsent?client_id=0027603f-364b-40f2-98be-8ca4bb79bf8b
Resource 应用程序注册后,您需要创建单租户 Client 应用程序。
创建单租户 Client 应用程序
  1. 转到 Azure 门户。
  2. 导航到 Microsoft Entra ID > 企业应用程序。
  3. 选择新建应用程序。
  4. 选择创建自己的应用程序。
  5. 输入应用程序名称,选择注册应用程序以与 Microsoft Entra ID 集成,然后单击创建。
  6. 在支持的帐户类型下,选择仅限单租户,然后单击注册。
  7. 导航到 Microsoft Entra ID > 应用注册,然后选择所有应用程序。
  8. 搜索并点击您刚刚创建的应用程序。
  9. 点击 添加重定向 URI。
  10. 您需要添加三个重定向 URI:Web、单页应用程序 和 移动和桌面应用程序。
    1. 对于每个 URI,选择 添加重定向 URI。
    2. 输入重定向 URI。有关要添加的内容的详细信息,请参阅下表。
      平台类型 重定向 URI 备注
      Web 客户特定的 NetScaler 登录 URI URI 字符串是根据您特定的 NetScaler URL 计算的。
      移动和桌面应用程序 ctxaadsso://citrix.aad.redirect 完全按原样输入此 URI。
      SPA 应用程序(单页应用程序) StoreFront 应用商店 Web URL 输入您的 StoreFront 应用商店的 Web URL。例如,如果通过浏览器访问您的应用商店的 URL 是 https://finance.acme.com/Citrix/MyStoreWeb,则 SPA 重定向 URI 必须是 https://finance.acme.com/Citrix/MyStoreWeb。如果您的环境中存在多个应用商店,则必须将所有应用商店的 Web URL 输入为 SPA 重定向 URI。
    3. 选择 配置。
  11. 添加所有重定向 URI 后,您需要向客户端应用程序添加一个 API 权限。
    1. 在“管理”下的左侧窗格中,选择 API 权限。
    2. 选择 添加权限。
    3. 选择 我的组织使用的 API。
    4. 选择 Citrix 资源应用程序 (Citrix-Workspace-Resource)。
    5. 在权限列表中,选中 user_impersonation。
    6. 选择 添加权限。
  12. 在左侧窗格中,选择 概述,并记下分配的应用程序 ID。
注册客户端应用程序
创建并配置应用程序后,您必须同意应用程序权限。
您可以在 Azure 门户中同意应用程序的权限:
  1. 导航到 微软 Entra 标识 > 企业应用程序。
  2. 搜索并选择客户端应用程序。
  3. 在“安全性”下的左侧窗格中,选择 权限。
  4. 单击 授予管理员同意 \<tenantName\>
  5. 同意这些权限。
或者,您可以使用管理员同意 URL: https://login.microsoftonline.com/<EntraTenantID>/adminconsent?client_id=<clientAppID>
注意:
您必须将 <EntraTenantID> 替换为您的 Entra 租户 ID,并将 <clientAppID> 替换为客户端应用程序的应用程序 ID。
Citrix 资源应用程序权限
以下是应用程序的权限:
API 名称 声明值 权限 类型
微软图形 User.Read 登录并读取用户配置文件 委派
对于美国、欧盟和 APS,该应用程序称为 Citrix-Workspace-Resource (application ID 3a510bb1-e334-4298-831e-3eac97f8b26c)。
对于日本,该应用程序称为 Citrix-Workspace-Resource-JP (application ID 0027603f-364b-40f2-98be-8ca4bb79bf8b)。
Citrix 客户端应用程序权限
以下是应用程序的权限:
API 名称 声明值 权限 类型
思杰-工作区-资源
Citrix-工作区-资源-JP
user_impersonation Citrix Entra ID 单点登录 委派
微软图形 User.Read 登录并读取用户配置文件 委派

启用 Microsoft Entra ID 远程桌面服务身份验证协议

您必须在 Citrix Resource 应用程序中启用 Microsoft Entra ID 远程桌面服务身份验证协议。为此:
  1. 在 Azure 门户 中,导航到 Microsoft Entra ID > Devices > Manage > Remote connection configuration。
    Entra 应用程序配置 1
  2. 选择名为 Citrix-Workspace-Resource 的资源。
  3. 启用 Microsoft Entra ID 远程桌面服务身份验证协议。
    Entra 应用程序配置 2
  4. 继续隐藏用户同意提示。

隐藏用户同意提示对话框

默认情况下,当用户连接到启用了 Microsoft Entra 单一登录的 Microsoft Entra 加入或 Microsoft Entra 混合加入会话主机时,系统会提示他们允许远程桌面连接,此时他们必须选择“是”以允许单一登录。Microsoft Entra 将记住最多 15 个唯一的会话主机 30 天,之后会再次提示。
您可以通过配置目标设备列表来隐藏此对话框。要配置设备列表,您必须在 Microsoft Entra ID 中创建一个或多个组,这些组包含 Microsoft Entra 加入和/或 Microsoft Entra 混合加入的会话主机,然后在资源应用程序中授权这些组,最多可授权 10 个组。
一旦您启用了 Microsoft Entra ID 远程桌面服务身份验证协议并创建了组:
  1. 单击链接以添加目标设备组并选择相应的组。
    Entra 应用程序配置 3
注意
强烈建议创建动态组以简化组的成员资格管理。虽然动态组通常在 5-10 分钟内更新,但大型租户可能需要长达 24 小时。
动态组需要 Microsoft Entra ID P1 许可证或 Intune for Education 许可证。有关详细信息,请参阅组的动态成员资格规则。
  1. 继续批准客户端应用程序。

批准客户端应用程序

您必须在 Citrix 资源应用程序中将 Citrix Client 应用程序明确添加为已批准的客户端:
  1. 单击链接以添加您的受信任客户端应用程序。
    Entra 应用程序配置 4
  2. 选择 Citrix Client 应用程序。
    Entra 应用程序配置 5
  3. 选择保存以将配置更改应用于 Citrix 资源应用程序。
    Entra 应用程序配置 6
  4. 继续创建 Kerberos 服务器对象。

创建 Kerberos 服务器对象

如果您的会话主机是 Microsoft Entra 混合加入的,则必须在用户和计算机帐户所在的 Active Directory 域中配置 Kerberos 服务器对象。有关详细信息,请参阅创建 Kerberos 服务器对象。

查看 Microsoft Entra 条件访问策略

如果您使用或计划使用 Microsoft Entra 条件访问策略,请查看应用于 Citrix 资源应用程序 的配置,以确保用户获得预期的登录体验。
有关在使用 Microsoft Entra 单一登录时配置条件访问的详细指南,请参阅 Microsoft 文档。请记住,所需的条件访问设置必须应用于 Citrix 资源应用程序,而不是 Citrix 客户端应用程序或 Microsoft 应用程序。

Citrix 会话主机

确保满足会话主机的系统要求:
  1. 确保会话主机已 Microsoft Entra 混合加入。
  2. 按照系统要求安装所需的操作系统版本和内部版本。
  3. 按照系统要求安装所需的 VDA 版本。

Microsoft Entra 混合加入的会话主机

当使用 Citrix Machines Creation Services、Citrix Provisioning 或 Windows 365 部署 Microsoft Entra 混合加入的会话主机时,请继续下一节。如果您使用任何其他工具或方法预配 Microsoft Entra 混合加入的主机,则必须将以下注册表值添加到您的会话主机:
  • 键:HKLM\SYSTEM\CurrentControlSet\Control\Citrix
  • 值类型:DWORD
  • 值名称:AzureADJoinType
  • 数据: 1

会话锁定行为

当虚拟桌面被锁定时,默认行为是显示 Windows 锁定屏幕。此时,支持的桌面解锁身份验证方法是用户名和密码或智能卡。
注意
Citrix Web 登录(预览版)允许您使用基于 Web 的 Entra 身份验证解锁桌面。有关详细信息,请参阅Web 登录。
如果您部署了无密码环境,用户不知道其密码,建议将会话锁定行为配置为断开会话连接,而不是显示锁定屏幕。
您可以通过 Intune 或组策略启用锁定远程会话时断开 Microsoft 身份平台身份验证设置来配置此行为。有关详细步骤,请参阅配置 Azure 虚拟桌面的会话锁定行为。

Citrix 访问和控制平面

StoreFront 配置

要在 StoreFront 中启用 Microsoft Entra 单点登录,请参阅 StoreFront 文档中的 Entra ID single-on。

在 Web Studio 中启用 Microsoft Entra 单点登录

要在您的站点上启用 Microsoft Entra 单点登录,您必须添加客户端和资源应用程序详细信息以及重定向 URI。有关详细信息,请参阅 Settings 文档。

为交付组启用 Microsoft Entra 单点登录

使用 Web Studio
  1. 在 Web Studio 中转到交付组,然后单击 创建交付组。
  2. 在 用户 页面上,选择 Microsoft Entra 混合加入 作为身份类型。
  3. 在以下页面上完成配置。有关参考,请参阅 创建交付组。
使用 PowerShell
  1. 创建新的交付组并将 VDA 添加到交付组。将用户(AD 帐户)分配给 VDA。
  2. 将交付组 MachineLogonType 设置为 HybridAzureAd。例如:
    Get-BrokerDesktopGroup -Name <dgName> | Set-BrokerDesktopGroup -MachineLogOnType "HybridAzureAd"
  3. 信任 Xml 服务。
    Add-PSSnapin Citrix.Broker.Admin.V2
    Set-BrokerSite -TrustRequestsSentToTheXmlServicePort $true
  4. 设置 SSO 参数(请参阅下表获取指导)。
    Set-BrokerSite -AzureGlobalCloudId "B16898C6-A148-4967-9171-64D755DA8520" -AzureSSOnAuthorizeUrl "<URL>" -AzureSSOnClientId "<clientAppID>" -AzureSSOnRedirectUrl "<URL>" -AzureSSOnResourceAppId "<resourceAppID>"
    下表提供了参数及其默认值的详细信息:
    参数 默认值 描述
    AzureGlobalCloudId B16898C6-A148-4967-9171-64D755DA8520 标识 Windows 中的 Entra CloudAP。
    AzureSSOnAuthorizeUrl https://login.microsoftonline.com/common/ 初始登录 URL。这取决于 Entra 租户所在的 Azure 云(例如 Azure Commercial 与 Azure Gov)
    AzureSSOnClientId 无默认值 客户端应用程序的应用程序 ID。
    AzureSSOnRedirectUrl 无默认值 身份验证后重定向 URI。它必须是客户端应用程序中配置为重定向 URI 的 URL。
    AzureSSOnResourceAppId 3a510bb1-e334-4298-831e-3eac97f8b26c Citrix 资源应用程序的应用程序 ID。

在 VDA 上配置 Microsoft Entra 单点登录

默认情况下,VDA 上已启用 Microsoft Entra 单点登录。要为部分会话主机启用或禁用此功能,请使用Microsoft Entra 单点登录策略设置。

客户端设备

确保满足客户端设备的系统要求:
  1. 安装 系统要求 中指定的 Citrix Workspace 应用程序版本。
  2. 如果您的用户将利用混合访问,请确保已安装 Citrix Web Extension。如果您的用户将使用本机或浏览器访问,则不需要 Citrix Web Extension。

故障排除

注意
有关 StoreFront 问题的故障排除,请参阅 诊断日志。

已知问题

  • 如果 Storefront 显示错误 There was a failure with the mapped account,这可能是因为用户是 Entra ID 用户,但在 Active Directory 中没有匹配的用户。
  • 如果会话启动在 ICA 文件发布之前失败,请确保已启用 XML 信任。
  • 如果 VDA 状态停留在“正在初始化”,请确保 Active Directory 中的计算机对象位于与 Entra ID 同步的 OU 中。
  • 如果在 Entra ID 中禁用了“保持登录状态 (KMSI)”,则 Linux 和 macOS 客户端设备上的单点登录将失败。

单点登录失败时

如果在访问虚拟桌面或应用程序时单点登录失败,请按以下步骤操作:
  1. 确认 StoreFront 中已启用 Microsoft Entra 单点登录。
  2. 确认您的站点中已启用 Microsoft Entra 单点登录。
  3. 确认交付组中已启用 Microsoft Entra 单点登录。
  4. 确认用户使用的访问方法受支持。
  5. 如果用户正在使用混合访问,请确认已安装 Citrix Web Extension。
  6. 确认客户端设备正在运行所需的 Citrix Workspace 应用程序版本。
  7. 确认您的会话主机正在运行所需的 Windows 版本。
  8. 确认您的会话主机正在运行所需的 VDA 版本。
  9. 确保会话主机上未启用 Windows 设置 Always prompt for password upon connection。此设置默认禁用,可以通过组策略或 Intune 在 Computer Configuration\Administrative Templates\Windows Components\Remote Desktop Services\Remote Desktop Session Host\Security 下进行配置。您可以通过在注册表中查找 HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services 下的值 fPromptForPassword 来检查该设置是否已启用。如果该值设置为 1,则表示该设置已启用,单点登录将不可用。如果该值缺失或设置为 0,则表示该设置已禁用。
  10. 确认会话主机中 AzureADJoinType 设置配置正确:
    • 键:HKLM\SYSTEM\CurrentControlSet\Control\Citrix
    • 值类型:DWORD
    • 值名称:AzureADJoinType
    • 值数据:1 (Microsoft Entra 混合加入)
  11. 确保在 Citrix Studio 中,虚拟桌面或应用程序分配给 Active Directory 身份,而不是 Entra ID 身份。
  12. 确认通过运行以下 PowerShell 命令正确配置了交付组的登录类型:
    Get-BrokerDesktopGroup -Name <deliveryGroupName>
    对于 Microsoft Entra 混合加入的会话主机,MachineLogOnType 必须设置为 HybridAzureAd。
  13. 确认 Citrix 资源应用程序和单租户客户端应用程序已注册到 Microsoft Entra 租户。
  14. 确认 Microsoft Entra ID RDS 身份验证协议已在 Citrix 资源应用程序上启用。
  15. 确认客户端应用程序已作为批准的客户端应用程序添加到 Citrix 资源应用程序中。
  16. 如果您的会话主机已加入 Microsoft Entra 混合模式,请确认已在用户和计算机帐户所在的 Active Directory 域中创建了 Kerberos 服务器对象。
  17. 检查您的 Microsoft Entra 条件访问策略。确保没有策略应用于 Citrix 客户端应用程序,并且应用于 Citrix 资源应用程序或会话主机的任何策略都已正确配置,以免影响单点登录体验。