身份验证
确保 Citrix Workspace 应用程序与已发布的资源之间的连接安全,以最大限度地提高安全性。您可以配置以下类型的身份验证:
- 域直通
- 智能卡
- Kerberos 直通
域直通身份验证
单点登录功能允许您进行身份验证并使用虚拟应用程序和桌面,而不需要重新进行身份验证。
登录 Citrix Workspace 应用程序允许您的凭据和枚举的资源传递到 StoreFront。
在早期版本中,使用 Google Chrome、Microsoft Edge 或 Mozilla FireFox 时,即使未启用该功能,也可以启动单点登录会话。
自版本 1905 起,所有 Web 浏览器都要求您使用组策略对象管理模板配置单点登录。有关使用组策略对象管理模板配置单点登录的详细信息,请参阅使用 Citrix Gateway 配置单点登录。
您可以使用以下任意选项在进行全新安装或升级安装时配置单点登录:
- 命令行接口
- 图形用户界面 (GUI)
在全新安装过程中配置单点登录
在全新安装过程中配置单点登录:
- 在 StoreFront 或 Web Interface 上进行配置。
- 在 Delivery Controller 上配置 XML 信任服务。
- 修改 Internet Explorer 设置。
- 安装具有单点登录功能的 Citrix Workspace 应用程序。
在 StoreFront 或 Web Interface 上配置单点登录
可以使用管理控制台在 StoreFront 或 Web Interface 上配置单点登录,具体取决于 Citrix Virtual Apps and Desktops 部署的类型。
通过下表了解不同的用例及其各自的配置:
用例 | 配置详细信息 | 其他信息 |
---|---|---|
在 StoreFront 或 Web Interface 上配置的 SSON | 启动 Citrix Studio,然后转至应用商店 > 管理身份验证方法 > 启用域直通。 | 如果未配置单点登录,Citrix Workspace 应用程序会自动将身份验证方法从域直通切换为用户名和密码(如果可用)。 |
需要适用于 Web 的 Workspace 时 | 启动应用商店 > 适用于 Web 的 Workspace 站点 > 管理身份验证方法 > 启用域直通。 | 如果未配置单点登录,Citrix Workspace 应用程序会自动将身份验证方法从域直通切换为用户名和密码(如果可用)。 |
未配置 StoreFront 时 | 如果在 VDA 上配置了 Web Interface,请启动 XenApp Services 站点 > 身份验证方法 > 启用直通。 | 如果未配置单点登录,Citrix Workspace 应用程序会自动将身份验证方法从直通切换为显式(如果可用)。 |
通过 Citrix Gateway 配置单点登录
使用组策略对象管理模板对 Citrix Gateway 启用单点登录。
- 通过运行 gpedit.msc 打开 Citrix Workspace 应用程序 GPO 管理模板。
- 在计算机配置节点下,转至管理模板 > Citrix 组件 > Citrix Workspace > 用户身份验证。
- 选择适用于 Citrix Gateway 的单点登录策略。
- 选择已启用。
- 单击应用和确定。
- 重新启动 Citrix Workspace 应用程序以使所做的更改生效。
在 Delivery Controller 上配置 XML 信任服务
在 Citrix Virtual Apps and Desktops 和 Citrix DaaS(以前称为 Citrix Virtual Apps and Desktops 服务)上,以管理员身份在 Delivery Controller 上运行以下 PowerShell 命令:
asnp Citrix*
Set-BrokerSite -TrustRequestsSentToTheXmlServicePort $True
修改 Internet Explorer 设置
- 使用 Internet Explorer 将 StoreFront 服务器添加到可信站点列表。为此,您需要:
- 从控制面板启动 Internet 选项。
- 单击安全 > 本地 Internet,然后单击站点。此时将显示本地 Intranet 窗口。
- 选择高级。
- 添加使用恰当的 HTTP 或 HTTPS 协议的 StoreFront 或 Web Interface FQDN 的 URL。
- 单击应用和确定。
- 在 Internet Explorer 中修改用户身份验证设置。为此,您需要:
- 从控制面板启动 Internet 选项。
- 单击安全选项卡 > 受信任的站点。
- 单击自定义级别。此时将显示安全设置 – 受信任的站点区域窗口。
- 在用户身份验证窗格中,选择使用当前用户名和密码自动登录。
- 单击应用和确定。
使用命令行接口配置单点登录
使用 /includeSSON
开关安装适用于 Windows 的 Citrix Workspace 应用程序并重新启动 Citrix Workspace 应用程序以使所做的更改生效。
注意:
如果安装适用于 Windows 的 Citrix Workspace 应用程序时未安装单点登录组件,则不支持使用
/includeSSON
开关升级到最新版本的 Citrix Workspace 应用程序。
使用图形用户界面配置单点登录
- 找到 Citrix Workspace 应用程序安装文件 (
CitrixWorkspaceApp.exe
)。 - 双击
CitrixWorkspaceApp.exe
以启动安装程序。 - 在启用单点登录安装向导中,选择启用单点登录选项。
- 单击下一步,然后按照提示完成安装。
您现在无需提供用户凭据即可使用 Citrix Workspace 应用程序。
在适用于 Web 的 Citrix Workspace 中配置单点登录
可以使用组策略对象管理模板在适用于 Web 的 Workspace 上配置单点登录。
- 通过运行 gpedit.msc 打开适用于 Web 的 Workspace GPO 管理模板。
- 在计算机配置节点下,转至管理模板 > Citrix 组件 > Citrix Workspace > 用户身份验证。
- 选择本地用户名密码策略并将其设置为已启用。
- 单击启用直通身份验证。此选项允许适用于 Web 的 Workspace 使用您的登录凭据在远程服务器上进行身份验证。
- 单击允许对所有 ICA 连接执行直通身份验证。此选项将跳过任何身份验证限制,并允许在所有连接上传递凭据。
- 单击应用和确定。
- 重新启动适用于 Web 的 Workspace 以使所做的更改生效。
通过启动任务管理器来验证是否已启用单点登录,并检查 ssonsvr.exe
进程是否正在运行。
使用 Active Directory 配置单点登录
可以使用 Active Directory 配置单点登录身份验证。您不需要使用部署工具,例如此示例中的 Microsoft System Center Configuration Manager。
-
下载 Citrix Workspace 应用程序安装文件 (CitrixWorkspaceApp.exe) 并将其放在合适的网络共享上。在其上安装了 Citrix Workspace 应用程序的目标计算机必须能够访问该安装文件。
-
从适用于 Windows 的 Citrix Workspace 应用程序下载页面获取
CheckAndDeployWorkspacePerMachineStartupScript.bat
模板。 -
编辑
CitrixWorkspaceApp.exe
的位置和版本。 -
在 Active Directory 组策略管理控制台中,键入
CheckAndDeployWorkspacePerMachineStartupScript.bat
作为启动脚本。有关部署启动脚本的详细信息,请参阅 Active Directory 部分。 -
在计算机配置节点中,转至管理模板 > 添加/删除模板以添加
icaclient.adm
文件。 -
添加
icaclient.adm
模板后,转至计算机配置 > 管理模板 > Citrix 组件 > Citrix Workspace > 用户身份验证。 -
选择本地用户名密码策略并将其设置为已启用。
-
选择启用直通身份验证,然后单击应用。
-
重新启动计算机以使更改生效。
在 StoreFront 和 Web Interface 上配置单点登录
StoreFront 配置
在 StoreFront 服务器上打开 Citrix Studio,然后选择身份验证 -> 添加/删除身份验证方法。选择域直通。
配置检查器
可以使用配置检查器运行测试,以确保单点登录正确配置。该测试在单点登录的不同检查点运行,并显示配置结果。
- 右键单击通知区域中的 Citrix Workspace 应用程序图标,然后单击高级首选项。 此时将显示高级首选项对话框。
-
单击配置检查器。 此时将显示 Citrix 配置检查器窗口。
- 从选择窗格中选择 SSONChecker。
- 单击运行。将显示一个进度条,显示测试的状态。
配置检查器窗口包含以下列:
-
状态: 显示特定检查点的测试结果。
- 绿色复选标记表明该特定检查点配置正确。
- 蓝色的“I”指示有关检查点的信息。
- 红色的“X”指示该特定检查点配置不正确。
- 提供程序:显示在其上运行测试的模块的名称。在本案例中,为单点登录。
- 套件:指示测试的类别。例如,安装。
- 测试:指示运行的具体测试的名称。
- 详细信息: 提供有关测试的其他信息。
用户获得有关每个检查点和相应结果的详细信息。
需要执行以下测试:
- 已随单点登录安装。
- 登录凭据捕获。
- 网络提供程序注册:只有将“Citrix Single Sign-On”设置为网络提供程序列表中的第一个时,针对网络提供程序注册的测试结果才会显示一个绿色复选标记。如果 Citrix Single Sign-On 显示在列表中的任何其他位置,则针对网络提供程序注册的测试结果会显示一个蓝色的“I”,并包含其他信息。
- 单点登录进程正在运行。
- 组策略:默认情况下,此策略配置在客户端上。
- Internet 的安全区域设置:确保将 Store/XenApp Service URL 添加到“Internet 选项”中的安全区域列表中。 如果通过组策略配置安全区域,策略中出现任何更改时,都需要重新打开高级首选项窗口才能使所做的更改生效,以及显示测试的正确状态。
- 适用于 Web Interface/StoreFront 的身份验证方法。
注意:
- 在适用于 Web 的 Workspace 配置中,这些测试结果不适用。
- 在多应用商店设置中,身份验证方法测试在所有已配置的应用商店上运行。
- 可以将测试结果保存为报告。默认报告格式为 .txt。
隐藏“高级首选项”窗口中的“配置检查器”选项
- 通过运行 gpedit.msc 打开 Citrix Workspace 应用程序组策略对象管理模板。
- 转至 Citrix 组件 > Citrix Workspace > 自助服务 > DisableConfigChecker。
- 单击已启用将隐藏高级首选项窗口中的“配置检查器”选项。
- 单击应用和确定。
- 运行
gpupdate /force
命令。
限制:
配置检查器不包括 VDA 上“信任发送到 XML Service 的请求”配置的检查点。
信标测试
信标检查器是配置检查实用程序的一部分。它允许您执行信标测试,以帮助确认信标 (ping.citrix.com) 是否可访问。此测试可帮助消除资源枚举较慢(即信标不可用)的多个可能原因之一。要运行测试,请右键单击通知区域中的 Citrix Workspace 应用程序并选择高级首选项 > 配置检查器。从测试列表中选择 Beacon checke(信标检查器)并单击运行。
测试结果可能为以下任一情况:
- 可访问 - Citrix Workspace 应用程序能够成功联系信标。
- 不可访问 - Citrix Workspace 应用程序无法联系信标。
- 部分可访问 - Citrix Workspace 应用程序能够间歇性地联系信标。
通过 Kerberos 实现的域直通身份验证
本主题仅适用于在适用于 Windows 的 Citrix Workspace 应用程序与 StoreFront、Citrix Virtual Apps and Desktops 和 Citrix DaaS 之间建立的连接。
Citrix Workspace 应用程序支持为使用智能卡的部署采用 Kerberos 进行域直通身份验证。Kerberos 是集成 Windows 身份验证 (IWA) 中包含的一种身份验证方法。
无需 Citrix Workspace 应用程序的密码即可进行 Kerberos 身份验证。因此,可以防止在用户设备上发生尝试获取密码访问权限的特洛伊木马攻击。用户可以使用任何身份验证方法登录并访问已发布的资源。例如,指纹读取器之类的生物特征身份验证器。
使用智能卡登录到配置了智能卡身份验证的 Citrix Workspace 应用程序、StoreFront、Citrix Virtual Apps and Desktops 和 Citrix DaaS 时,Citrix Workspace 应用程序将:
- 在单点登录期间捕获智能卡 PIN。
-
使用 IWA (Kerberos) 向 StoreFront 验证用户身份。然后,StoreFront 向您的 Citrix Workspace 应用程序提供有关可用 Citrix Virtual Apps and Desktops 和 Citrix DaaS 的信息。
注意
应启用 Kerberos 以避免额外的 PIN 提示。如果未使用 Kerberos 身份验证,Citrix Workspace 应用程序将使用智能卡凭据向 StoreFront 进行身份验证。
- HDX Engine 将智能卡 PIN 传递给 VDA,从而使用户登录到 Citrix Workspace 应用程序会话。Citrix Virtual Apps and Desktops 和 Citrix DaaS 随后提供请求的资源。
要将 Kerberos 身份验证用于 Citrix Workspace 应用程序,请确保您的 Kerberos 配置符合以下条件。
- Kerberos 只在 Citrix Workspace 应用程序与属于相同或可信 Windows Server 域的服务器之间起作用。服务器还必须启用信任委派,您可以通过“Active Directory 用户和计算机管理”工具配置该选项。
- 必须在域和 Citrix Virtual Apps and Desktops 和 Citrix DaaS 上启用 Kerberos。为了增强安全性并确保使用 Kerberos,请在域上禁用任何非 Kerberos IWA 选项。
- Kerberos 登录不适用于配置为使用基本身份验证、始终使用指定的登录信息或始终提示输入密码的远程桌面服务连接。
警告
注册表编辑器使用不当可能导致严重问题,可能需要重新安装操作系统。Citrix 无法保证因注册表编辑器使用不当导致出现的问题能够得以解决。使用注册表编辑器需自担风险。在编辑注册表之前,请务必进行备份。
通过 Kerberos 实现的域直通身份验证与智能卡结合使用
在继续操作之前,请参阅 Citrix Virtual Apps and Desktops 文档的保护部署部分中的智能卡信息。
安装适用于 Windows 的 Citrix Workspace 应用程序时,请包含以下命令行选项:
-
/includeSSON
此选项在加入域的计算机上安装 Single Sign-On 组件,从而使您的工作区能够使用 IWA (Kerberos) 向 StoreFront 进行身份验证。单点登录组件存储智能卡 PIN 码,HDX Engine 在将智能卡硬件和凭据远程传递到 Citrix Virtual Apps and Desktops 和 Citrix DaaS 时会使用此 PIN 码。Citrix Virtual Apps and Desktops 和 Citrix DaaS 自动从智能卡选择一个证书并从 HDX Engine 获得此 PIN。
默认情况下启用一个相关选项
ENABLE\_SSON
。
如果安全策略阻止在设备上启用 Single Sign-On,请使用组策略对象管理模板配置 Citrix Workspace 应用程序。
- 通过运行 gpedit.msc 打开 Citrix Workspace 应用程序组策略对象管理模板。
- 选择管理模板 > Citrix 组件 > Citrix Workspace > 用户身份验证 > 本地用户名和密码
- 选择启用直通身份验证。
-
重新启动 Citrix Workspace 应用程序以使所做的更改生效。
配置 StoreFront:
在 StoreFront 服务器上配置身份验证服务时,选择域直通选项。该设置将启用集成 Windows 身份验证。无需选择智能卡选项,除非您还具有未加入域的客户端使用智能卡连接到 StoreFront。
有关将智能卡用于 StoreFront 的详细信息,请参阅 StoreFront 文档中的配置身份验证服务。
智能卡
适用于 Windows 的 Citrix Workspace 应用程序支持以下智能卡身份验证:
-
直通身份验证(单点登录) - 当用户登录 Citrix Workspace 应用程序时,直通身份验证可捕获智能卡凭据。Citrix Workspace 应用程序按以下方式使用捕获的凭据:
- 使用智能卡凭据登录 Citrix Workspace 应用程序的已加入域的设备用户无需重新进行身份验证即可启动虚拟桌面和应用程序。
- 在使用智能卡凭据的情况下,对于在未加入域的设备上运行的 Citrix Workspace 应用程序,用户必须再次键入其凭据才能启动桌面或应用程序。
直通身份验证需要使用 StoreFront 和 Citrix Workspace 应用程序上的配置。
-
双模式身份验证 - 双模式身份验证允许用户在使用智能卡与键入用户名和密码之间进行选择。无法使用智能卡时,可使用此功能。例如,登录证书已过期。必须为每个站点设置专用应用商店才允许使用双模式身份验证,并将 DisableCtrlAltDel 方法设置为 False 以允许使用智能卡。双模式身份验证需要 StoreFront 配置。
通过使用双模式身份验证,StoreFront 管理员可以允许用户针对同一个应用商店使用用户名和密码身份验证以及智能卡身份验证,方法是在 StoreFront 控制台中进行选择。请参阅 StoreFront 文档。
-
多个证书 – 如果正在使用多个证书,则其可用于单个智能卡。
-
客户端证书身份验证 – 客户端证书身份验证需要使用 Citrix Gateway 和 StoreFront 配置。
- 要通过 Citrix Gateway 访问 StoreFront,在移除智能卡后您可能必须重新进行身份验证。
- 当 Citrix Gateway SSL 配置设置为强制客户端证书身份验证时,操作更加安全。但是,强制客户端证书身份验证与双模式身份验证不兼容。
-
双跳会话 - 如果需要双跳,则需要在 Citrix Workspace 应用程序和用户的虚拟桌面之间建立连接。支持双跳的部署在 Citrix Virtual Apps and Desktops 文档中进行了介绍。
-
支持智能卡的应用程序 - 支持智能卡的应用程序(如 Microsoft Outlook 和 Microsoft Office)允许用户对虚拟应用程序和桌面会话中的文档进行数字签名或加密。
限制:
- 证书必须存储在智能卡上,而非存储在用户设备上。
- Citrix Workspace 应用程序不保存用户证书选择信息,但在配置时存储 PIN。PIN 仅在非分页内存中缓存,不存储在磁盘中。
- 插入智能卡后,Citrix Workspace 应用程序不会重新连接会话。
- 针对智能卡身份验证进行配置后,Citrix Workspace 应用程序不支持虚拟专用网络 (VPN) 单点登录或会话预启动。要结合使用 VPN 与智能卡身份验证,请安装 Citrix Gateway 插件并通过 Web 页面登录,在每一步都使用智能卡和 PIN 进行身份验证。使用 Citrix Gateway 插件通过直通身份验证访问 StoreFront 不适用于智能卡用户。
- Citrix Workspace 应用程序 Updater 与 citrix.com 通信,且 Merchandising Server 与 Citrix Gateway 上的智能卡身份验证不兼容。
警告
某些配置需要编辑注册表。注册表编辑器使用不当可能导致问题,可能需要重新安装操作系统。Citrix 无法保证因注册表编辑器使用不当导致出现的问题能够得以解决。在编辑注册表之前,请务必进行备份。
要为智能卡身份验证启用单点登录,请执行以下操作:
要配置适用于 Windows 的 Citrix Workspace 应用程序,请在安装期间包含以下命令行选项:
-
ENABLE\_SSON=Yes
单点登录是另一个用于直通身份验证的术语。启用此设置可阻止 Citrix Workspace 应用程序第二次显示 PIN 提示。
-
如果未安装 Single Sign-On 组件,请将 SSONCheckEnabled 设置为 false。此注册表项可阻止 Citrix Workspace 应用程序身份验证管理器查找 Single Sign-On 组件,因此允许 Citrix Workspace 应用程序向 StoreFront 进行身份验证。
HKEY\_CURRENT\_USER\Software\Citrix\AuthManager\protocols\integratedwindows\
HKEY\_LOCAL\_MACHINE\Software\Citrix\AuthManager\protocols\integratedwindows\
要为 StoreFront 启用智能卡身份验证而非 Kerberos,请使用下面的命令行选项安装适用于 Windows 的 Citrix Workspace 应用程序:
-
/includeSSON
安装单点登录(直通)身份验证。启用凭据缓存以及使用基于域的直通身份验证。 -
如果用户使用智能卡以外的适用于 Windows 的 Citrix Workspace 应用程序身份验证方法(如用户名和密码)登录端点,则命令行如下:
/includeSSON LOGON_CREDENTIAL_CAPTURE_ENABLE=No
这样可阻止在登录时捕获凭据,并允许在登录 Citrix Workspace 应用程序时 Citrix Workspace 应用程序存储 PIN。
- 通过运行 gpedit.msc 打开 Citrix Workspace 应用程序组策略对象管理模板。
- 转至管理模板 > Citrix 组件 > Citrix Workspace > 用户身份验证 > 本地用户名和密码。
- 选择启用直通身份验证。根据配置和安全设置,选择允许对所有 ICA 执行直通身份验证选项以便能够使用直通身份验证。
配置 StoreFront:
- 配置身份验证服务时,请选中智能卡复选框。
有关将智能卡用于 StoreFront 的详细信息,请参阅 StoreFront 文档中的配置身份验证服务。
要使用户设备支持使用智能卡,请执行以下操作:
- 将证书颁发机构根证书导入设备的密钥库。
- 安装供应商的加密中间件。
- 安装和配置 Citrix Workspace 应用程序。
要更改证书的选择方式,请执行以下操作:
默认情况下,如果多个证书有效,则 Citrix Workspace 应用程序将提示用户从列表中选择证书。或者,可以将 Citrix Workspace 应用程序配置为使用默认证书(根据智能卡提供商)或近期即将过期的证书。如果没有有效的登录证书,则会向用户发出通知,并提供使用其他可用登录方法的选项。
有效证书必须具备以下所有特点:
- 本地计算机上时钟的当前时间在证书有效期内。
- 使用者公钥必须使用 RSA 算法且密钥长度为 1024 位、2048 位或 4096 位。
- 密钥用法必须包含数字签名。
- 使用者备用名称必须包含用户主体名称 (UPN)。
- 增强型密钥用法必须包含智能卡登录和客户端身份验证或所有密钥用法。
- 证书颁发者链条中的证书颁发机构之一必须匹配服务器在 TLS 握手时发送的允许的可分辨名称 (DN) 之一。
使用以下方法之一可更改证书的选择方式:
-
在 Citrix Workspace 应用程序命令行中,指定选项
AM\_CERTIFICATESELECTIONMODE={ Prompt | SmartCardDefault | LatestExpiry }
。默认有提示。对于 SmartCardDefault 或 LatestExpiry,如果有多个证书符合条件,则 Citrix Workspace 应用程序将提示用户从中选择一个证书。
-
将以下注册表项值添加到注册表项 HKEY_CURRENT_USER 或 HKEY_LOCAL_MACHINE\Software[Wow6432Node]Citrix\AuthManager: CertificateSelectionMode={ Prompt SmartCardDefault LatestExpiry }。
在 HKEY_CURRENT_USER 中定义的值优先级高于 HKEY_LOCAL_MACHINE 中的值,可更好地帮助用户选择证书。
要使用 CSP PIN 提示,请执行以下操作:
默认情况下,向用户显示的 PIN 提示由适用于 Windows 的 Citrix Workspace 应用程序而不是智能卡加密服务提供程序 (CSP) 提供。Citrix Workspace 应用程序在需要时提示用户输入 PIN,然后将 PIN 传递给智能卡 CSP。如果您的站点或智能卡有更严格的安全要求(如不允许在每进程或每会话缓存 PIN),则可将 Citrix Workspace 应用程序配置为使用 CSP 组件以管理 PIN 条目,包括输入 PIN 的提示。
使用以下方法之一更改 PIN 条目的处理方式:
- 在 Citrix Workspace 应用程序命令行中,指定选项
AM\_SMARTCARDPINENTRY=CSP
。 - 将以下注册表项值添加到注册表项 HKEY_LOCAL_MACHINE\Software\[Wow6432Node\]Citrix\AuthManager: SmartCardPINEntry=CSP。
智能卡支持和移除更改
连接到 XenApp 6.5 PNAgent 站点时请注意以下几个方面:
- PNAgent 站点登录支持智能卡登录。
- PNAgent 站点上的智能卡移除策略已发生变化:
移除智能卡时注销 Citrix Virtual Apps 会话 - 如果在 PNAgent 站点上已将智能卡配置为身份验证方法,则必须在适用于 Windows 的 Citrix Workspace 应用程序上配置相应的策略以强制注销 Citrix Virtual Apps 会话。在 XenApp PNAgent 站点上为智能卡身份验证启用漫游,同时启用智能卡移除策略,这会从 Citrix Workspace 应用程序会话中注销 Citrix Virtual Apps。而用户在 Citrix Workspace 应用程序会话中仍然保持登录状态。
限制:
当使用智能卡身份验证登录 PNAgent 站点时,用户名显示为已登录。