Product Documentation

配置智能卡身份验证

Nov 20, 2015

Receiver for Windows 支持以下智能卡身份验证特性。有关 XenDesktop 和 StoreFront 配置的信息,请参阅这些组件的文档。本主题介绍适用于智能卡的 Receiver for Windows 配置。

  • 直通身份验证 (Single Sign-On) –当用户登录到 Receiver 时,直通身份验证可捕获智能卡凭据。Receiver 按以下方式使用捕获的凭据:
    • 使用智能卡凭据登录到 Receiver 的已加入域的设备用户无需再次进行身份验证即可启动虚拟桌面和应用程序。
    • 使用智能卡凭据登录到 Receiver 的未加入域的设备用户必须再次输入凭据才可启动桌面或应用程序。

    直通身份验证需要使用 StoreFront 和 Receiver 配置。

  • 双模式身份验证 – 双模式身份验证可使用户在使用智能卡和输入用户名和密码之间进行选择。此功能在无法使用智能卡时非常有用(例如,用户将其遗忘在家里或登录证书已过期)。双模式身份验证需要使用 StoreFront 和 NetScaler Gateway 配置。
  • 多个证书 – 如果正在使用多个证书,则可将其用于单个智能卡。如果用户将智能卡插入读卡器,则这些证书可用于在用户设备上运行的所有应用程序,包括 Receiver。要更改证书的选择方式,请配置 Receiver。
  • 客户端证书身份验证 – 客户端证书身份验证需要使用 NetScaler Gateway/Access Gateway 和 StoreFront 配置。
    • 要通过 NetScaler Gateway/Access Gateway 访问 StoreFront 资源,在移除智能卡后用户可以必须重新进行身份验证。
    • 当 NetScaler Gateway/Access Gateway SSL 配置设置为强制客户端证书身份验证时,操作更加安全。但是,强制客户端证书身份验证与双模式身份验证不兼容。
  • 双跳会话 – 如果需要双跳,则需要在 Receiver 和用户的虚拟桌面之间建立更进一步的连接。支持双跳的部署在 XenDesktop 文档中有介绍。
  • 支持智能卡的应用程序 – 支持智能卡的应用程序,如 Microsoft Outlook 和 Microsoft Office,允许用户对虚拟桌面或应用程序会话中的文档进行数字签名或加密。

必备条件

本主题假设您熟悉 XenDesktop 和 StoreFront 文档中的智能卡主题。

限制

  • 证书必须存储在智能卡上,而非用户设备上。
  • Receiver for Windows 不会保存用户 PIN 或证书选择。
  • 插入智能卡后,Receiver for Windows 不会重新连接会话。
  • 针对智能卡身份验证进行配置后,Receiver for Windows 不支持虚拟专用网络 (VPN) Single Sign-On 或会话预启动。要将智能卡身份验证与 VPN 隧道结合使用,用户必须安装 NetScaler Gateway 插件并通过 Web 页登录,在每一步都使用智能卡和 PIN 进行身份验证。使用 NetScaler Gateway 插件通过直通身份验证访问 StoreFront 不适用于智能卡用户。
  • 不支持通过直接智能卡身份验证访问 App Controller。但是,您可以将 App Controller 部署在 StoreFront 之后,以便使用 StoreFront 证书身份验证服务。使用客户端证书身份验证的 Web 应用程序需要单独的智能卡提示,以便浏览器创建其自己的 SSL 连接。
  • Receiver for Windows Updater 与 citrix.com 通信,且 Merchandising Server 与 NetScaler Gateway 上的智能卡身份验证不兼容。
警告:本主题中说明的部分配置涉及注册表编辑操作。“注册表编辑器”使用不当会导致严重问题,可能需要重新安装操作系统。Citrix 无法保证因“注册表编辑器”使用不当导致出现的问题能够得以解决。使用“注册表编辑器”需自担风险。请确保在编辑注册表之前进行备份。

为智能卡身份验证启用 Single Sign-On

要配置 Receiver,请在安装时包含以下命令行选项:

  • ENABLE_SSON=Yes

    Single Sign-On 是另一个用于直通身份验证的术语。启用此设置可阻止 Receiver 第二次显示 PIN 提示。

此外,也可以通过以下策略和注册表更改执行此配置:

  • 管理模板 > 经典管理模板(ADM) > Citrix 组件 > Citrix Receiver > 用户身份验证 > 本地用户名和密码
  • 如果未安装 Single Sign-On 组件,请在下列任一注册表项中将SSONCheckEnabled设置为false。此注册表项可阻止 Receiver Authentication Manager 查找 Single Sign-On 组件,因此允许 Receiver 向 StoreFront 进行身份验证。

    HKEY_CURRENT_USER\Software\Citrix\AuthManager\protocols\integratedwindows\

    HKEY_LOCAL_MACHINE\Software\Citrix\AuthManager\protocols\integratedwindows\

配置 StoreFront:

  • 在 StoreFront 服务器上的 default.ica 文件中,将 Set DisableCtrlAltDel 设置为 false
  • 在 StoreFront 服务器上配置身份验证服务时,选中域直通复选框,并保持不选中智能卡复选框。

    有关将智能卡用于 StoreFront 的详细信息,请参阅 StoreFront 文档中的配置身份验证服务

使用户设备支持使用智能卡

  1. 将证书颁发机构根证书导入设备的密钥库。
  2. 安装供应商的加密中间件。
  3. 安装和配置 Receiver for Windows。

更改证书的选择方式

默认情况下,如果多个证书有效,则 Receiver 将提示用户从列表中选择证书。或者,可以将 Receiver 配置为使用默认证书(根据智能卡提供商)或近期即将过期的证书。如果没有有效的登录证书,则会向用户发出通知,并提供使用其他可用登录方法的选项。

有效证书必须具备以下所有特点:

  • 本地计算机上时钟的当前时间在证书有效期内。
  • 使用者公钥必须使用 RSA 算法且密钥长度为 1024、2048 或 4096 位。
  • 密钥用法必须包含数字签名。
  • 使用者备用名称必须包含用户主体名称 (UPN)。
  • 增强型密钥用法必须包含智能卡登录和客户端身份验证或所有密钥用法。
  • 证书颁发者链条中的证书颁发机构之一必须匹配服务器在 SSL 握手时发送的允许的可分辨名称 (DN) 之一。

使用以下方法之一可更改证书的选择方式:

  • 在 Receiver 命令行中,指定选项 AM_CERTIFICATESELECTIONMODE={ Prompt | SmartCardDefault | LatestExpiry }

    默认有提示。对于 SmartCardDefaultLatestExpiry,如果有多个证书符合条件,则 Receiver 将提示用户从中选择一个证书。

  • 将以下注册表项值添加到注册表项 HKCU 或 HKLM\Software\[Wow6432Node\]Citrix\AuthManagerCertificateSelectionMode={ Prompt | SmartCardDefault | LatestExpiry }

    在 HKCU 中定义的值优先级高于 HKLM 中的值,可更好地帮助用户选择证书。

使用 CSP PIN 提示

默认情况下,向用户显示的 PIN 提示由 Receiver 而不是智能卡加密服务提供程序 (CSP) 提供。Receiver 在需要时提示用户输入 PIN,然后将 PIN 传递给智能卡 CSP。如果您的站点或智能卡有更严格的安全要求,如禁止在每进程或每会话缓存 PIN,则可将 Receiver 配置为使用 CSP 组件以管理 PIN 条目,包括输入 PIN 的提示。

使用以下方法之一更改 PIN 条目的处理方式:

  • 在 Receiver 命令行中,指定选项 AM_SMARTCARDPINENTRY=CSP
  • 将以下注册表项值添加到注册表项 HKLM\Software\[Wow6432Node\]Citrix\AuthManagerSmartCardPINEntry=CSP