配置智能卡身份验证

本文简要介绍了在典型 StoreFront 部署中为所有组件设置智能卡身份验证所涉及的任务。有关详细信息和按步骤的配置说明,请参阅各个产品的文档。

为 Citrix 环境配置智能卡 (PDF)

为智能卡配置 Citrix 部署的此概述将使用特定的智能卡类型。请注意,类似的步骤适用于其他供应商提供的智能卡。

必备条件

  • 确保在计划部署 StoreFront 服务器的 Microsoft Active Directory 域或者与 StoreFront 服务器域具有直接双向信任关系的域内配置所有用户的帐户。
  • 如果您计划启用智能卡直通身份验证,请确保您的智能卡读卡器类型、中间件类型和配置以及中间件 PIN 缓存策略允许这种验证方式。
  • 在提供用户桌面和应用程序并运行 Virtual Delivery Agent 的虚拟机或物理机上安装供应商的智能卡中间件。有关将智能卡与 XenDesktop 结合使用的详细信息,请参阅智能卡
  • 继续操作前,请确保正确配置了公钥基础结构。确认针对 Active Directory 环境正确配置了帐户映射的证书并且可以成功执行用户证书验证。

配置 NetScaler Gateway

  • 在 NetScaler Gateway 设备上,安装证书颁发机构颁发的签名服务器证书。有关详细信息,请参阅安装和管理证书

  • 在设备上安装发布您的智能卡用户证书的证书颁发机构的根证书。有关详细信息,请参阅在 NetScaler Gateway 上安装根证书

  • 为进行客户端证书身份验证创建并配置虚拟服务器。创建证书身份验证策略,指定 SubjectAltName:PrincipalName 以从证书提取用户名称。然后,将该策略绑定到虚拟服务器并配置虚拟服务器来请求客户端证书。有关详细信息,请参阅配置和绑定客户端证书身份验证策略

  • 将证书颁发机构根证书绑定到虚拟服务器。有关详细信息,请参阅将根证书添加到虚拟服务器

  • 为确保用户在已经与其资源建立连接的情况下不会再额外收到虚拟服务器要求提供凭据的提示,应创建第二个虚拟服务器。创建虚拟服务器时,请在安全套接字层 (SSL) 参数中禁用客户端身份验证。有关详细信息,请参阅配置智能卡身份验证

    此外,还必须将 StoreFront 配置为通过此额外的虚拟服务器将用户连接路由到相应资源。用户登录到第一个虚拟服务器,第二个虚拟服务器用于连接到用户资源。如果已经建立连接,用户无需向 NetScaler Gateway 验证身份,但需要输入其 PIN 以登录其桌面和应用程序。除非您计划允许用户在遇到任何智能卡问题时回退至显式身份验证,否则可以自由选择是否配置第二个虚拟服务器来将用户连接路由到资源。

  • 创建用于从 NetScaler Gateway 连接到 StoreFront 的会话策略和配置文件,并将这些策略和文件绑定到相应的虚拟服务器。有关详细信息,请参阅支持文章

  • 如果将用于 StoreFront 连接的虚拟服务器配置为要求对所有通信进行客户端证书身份验证,则必须创建另一个虚拟服务器,用以为 StoreFront 提供回调 URL。此虚拟服务器仅由 StoreFront 使用,用以验证来自 NetScaler Gateway 设备的请求,因此该服务器无需供公众访问。强制进行客户端证书身份验证时,需要单独的虚拟服务器,因为 StoreFront 无法提供证书来进行身份验证。有关详细信息,请参阅创建虚拟服务器

配置 StoreFront

  • 必须将 HTTPS 用于 StoreFront 和用户设备之间的通信,以启用智能卡身份验证。通过在 Microsoft Internet Information Services (IIS) 中获取 SSL 证书,然后将 HTTPS 绑定添加到默认 Web 站点,为 HTTPS 配置 Microsoft Internet Information Services (IIS)。有关在 IIS 中创建服务器证书的详细信息,请参阅https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-R2-and-2012/hh831637(v=ws.11)。有关将 HTTPS 绑定添加到 IIS 站点的详细信息,请参阅https://docs.microsoft.com/en-us/previous-versions/orphan-topics/ws.11/hh831632(v=ws.11)

  • 如果您要要求所有 StoreFront URL 的 HTTPS 连接都必须提供客户端证书,请在 StoreFront 服务器上配置 IIS。

    安装 StoreFront 时,IIS 中的默认配置仅要求 StoreFront 身份验证服务的证书身份验证 URL 的 HTTPS 连接提供客户端证书。采用此配置,智能卡用户才可以选择回退至显式身份验证,并且可以根据相应的 Windows 策略设置,允许用户删除其智能卡,而不需要重新进行身份验证。

    如果 IIS 配置为针对所有 StoreFront URL 的 HTTPS 连接均要求提供客户端证书,则智能卡用户无法通过 NetScaler Gateway 进行连接,并且无法回退至显式身份验证。如果从设备上移除了智能卡,用户必须重新登录。要启用此 IIS 站点配置,身份验证服务和应用商店必须位于同一服务器上,并且必须使用对所有应用商店都有效的客户端证书。此外,在此配置中,IIS 需要客户端证书才能通过 HTTPS 连接到所有 StoreFront URL;这一配置将与 Citrix Receiver for Web 客户端的身份验证相冲突。因此,应在不需要执行 Citrix Receiver for Web 客户端访问时使用此配置。

    如果在 Windows Server 2012 安装 StoreFront,请注意,当 IIS 配置为使用 SSL 和客户端证书身份验证时,服务器受信任根证书颁发机构证书存储中所安装的非自签名证书将不受信任。有关此问题的详细信息,请参阅 http://support.microsoft.com/kb/2802568

  • 安装并配置 StoreFront。根据需要创建身份验证服务并添加应用商店。如果配置通过 NetScaler Gateway 进行远程访问,请勿启用虚拟专用网络 (VPN) 集成。有关详细信息,请参阅安装和设置 StoreFront

  • 为内部网络中的本地用户启用针对 StoreFront 的智能卡身份验证。为通过 NetScaler Gateway 访问应用商店的智能卡用户,启用 NetScaler Gateway 直通身份验证方法,并确保 StoreFront 配置为将凭据验证委派给 NetScaler Gateway。如果在加入域的用户设备上安装 Citrix Receiver for Windows 时计划启用直通身份验证,请启用域直通身份验证。有关详细信息,请参阅配置身份验证服务

    要允许通过智能卡进行 Citrix Receiver for Web 客户端身份验证,必须为每个 Citrix Receiver for Web 站点启用该身份验证方法。有关详细信息,请参阅配置 Citrix Receiver for Web 站点说明。

    如果希望智能卡用户在智能卡出现问题时能够回退到显式身份验证,请不要禁用用户名和密码身份验证方法。

  • 如果计划在已加入域的用户设备上安装 Citrix Receiver for Windows 时启用直通身份验证,请编辑应用商店的 default.ica 文件,以在用户访问其桌面和应用程序时启用用户智能卡凭据直通功能。有关详细信息,请参阅为 Citrix Receiver for Windows 启用智能卡直通身份验证

  • 如果创建了仅用于将用户连接路由到资源的另一台 NetScaler Gateway 虚拟服务器,对于向应用商店提供桌面和应用程序的部署,应配置通过此虚拟服务器对其连接进行最佳的 NetScaler Gateway 路由。有关详细信息,请参阅为应用商店配置最佳 HDX 路由

  • 要允许未加入域的 Windows 桌面设备的用户使用智能卡登录到桌面,请启用桌面设备站点的智能卡身份验证。有关详细信息,请参阅配置桌面设备站点

为桌面设备站点配置智能卡和显式身份验证两种方法,可以使用户在智能卡出现问题时使用显式凭据进行登录。

  • 对于使用运行 Citrix Desktop Lock 的已加入域的桌面设备和重用 PC 的用户,如果要允许其使用智能卡进行身份验证,请为 XenApp Services URL 启用智能卡直通身份验证。有关详细信息,请参阅配置 XenApp Services URL 的身份验证

配置用户设备

  • 确保在所有用户设备上安装供应商的智能卡中间件。

  • 如果用户使用未加入域的 Windows 桌面设备,应使用具有管理员权限的帐户安装 Receiver for Windows Enterprise。将 Internet Explorer 配置为在全屏模式下启动,并在设备开机时显示桌面设备站点。请注意,桌面设备站点 URL 区分大小写。将桌面设备站点添加到 Internet Explorer 的“本地 Intranet”或“可信站点”区域。在确认可以通过智能卡登录到桌面设备站点并且可以访问应用商店中的资源后,请安装 Citrix Desktop Lock。有关详细信息,请参阅安装 Desktop Lock

  • 如果用户使用加入域的桌面设备和重用 PC,应使用具有管理员权限的帐户安装 Receiver for Windows Enterprise。为相应应用商店配置具有 XenApp Services URL 的 Receiver for Windows。在确认可以通过智能卡登录到设备并且可以访问应用商店中的资源后,请安装 Citrix Desktop Lock。有关详细信息,请参阅安装 Desktop Lock

  • 对于所有其他用户,在用户设备上安装相应版本的 Citrix Receiver。要为具有已加入域的设备的用户启用 XenDesktop 和 XenApp 智能卡凭据直通,请使用具有管理员权限的帐户从命令提示窗口中使用 /includeSSON 选项安装 Receiver for Windows。有关详细信息,请参阅使用命令行参数配置和安装 Receiver for Windows

    确保通过域策略或本地计算机策略针对智能卡身份验证配置 Receiver for Windows。对于域策略,请使用组策略管理控制台为您的用户帐户所属的域将 Receiver for Windows 组策略对象模板文件 icaclient.adm 导入到域控制器中。要配置单个设备,请使用该设备上的组策略对象编辑器来配置模板。有关详细信息,请参阅为 Receiver 配置组策略对象模板

    启用智能卡身份验证策略。要启用用户智能卡凭据直通身份验证,请选择对 PIN 使用直通身份验证。然后,要将用户智能卡凭据直通传递到 XenDesktop 和 XenApp,请启用本地用户名和密码策略并选择允许对所有 ICA 连接进行直通身份验证。有关详细信息,请参阅 ICA 设置参考

    对于使用加入域的设备的用户,如果允许智能卡凭据直通传递到 XenDesktop 和 XenApp,请将应用商店 URL 添加到 Internet Explorer 的“本地 Intranet”或“可信站点”区域。请确保在该区域的安全设置中选择使用当前用户名和密码自动登录。

  • 如有必要,应使用适当的方式为用户提供应用商店(对于内部网络中的用户)或 NetScaler Gateway 设备(对于远程用户)的详细连接信息。有关将配置信息提供给用户的详细信息,请参阅 Citrix Receiver

为 Receiver for Windows 启用使用智能卡的直通身份验证

在加入域的用户设备上安装 Receiver for Windows 时,可以启用直通身份验证。要在用户访问 XenDesktop 和 XenApp 托管的桌面和应用程序时启用智能卡凭据直通功能,可以编辑应用商店的 default.ica 文件。

重要:在多服务器部署中,请一次仅使用一台服务器以更改服务器组的配置。确保 Citrix StoreFront 管理控制台未在部署中的任何其他服务器上运行。完成后,请 将对配置所做的更改传播到服务器组,以便更新部署中的其他服务器。

  1. 使用文本编辑器打开应用商店的 default.ica 文件,该文件通常位于 C:\inetpub\wwwroot\Citrix\storename\App_Data\ 目录中,其中 storename 为创建应用商店时为其指定的名称。

  2. 要为不通过 NetScaler Gateway 访问应用商店的用户启用智能卡凭据直通功能,请在 [Application] 部分中添加以下设置。

    DisableCtrlAltDel=Off
    <!--NeedCopy-->
    

    此设置适用于此应用商店的所有用户。要对桌面和应用程序同时启用域直通和使用智能卡进行直通身份验证,则必须为每种身份验证方法创建单独的应用商店。然后,将用户定向到与其身份验证方法所对应的应用商店。

  3. 要为通过 NetScaler Gateway 访问应用商店的用户启用智能卡凭据直通功能,请在 [Application] 部分中添加以下设置。

    UseLocalUserAndPassword=On
    <!--NeedCopy-->
    

    此设置适用于此应用商店的所有用户。要为部分用户启用直通身份验证,而要求其他用户登录才可访问其桌面和应用程序,必须为每组用户创建单独的应用商店。然后,将用户定向到与其身份验证方法所对应的应用商店。

配置智能卡身份验证