安装和配置
安装和设置顺序
- 安装 Federated Authentication Service (FAS)
- 在 StoreFront 存储上启用 FAS 插件
- 配置 Delivery Controller
- 配置组策略
- 使用 FAS 管理控制台执行以下操作:
-
安装 Federated Authentication Service
-
出于安全考虑,Citrix 建议将 Federated Authentication Service (FAS) 安装在专用服务器上,该服务器的安全性应与域控制器或证书颁发机构类似。FAS 可以通过以下任一方式安装:
- Citrix Virtual Apps and Desktops™ 安装程序(插入 ISO 后,在自动运行启动屏幕上单击 Federated Authentication Service 按钮),或者
-
独立的 FAS 安装程序文件(可在 Citrix Downloads 上以 MSI 文件的形式获取)。
-
这些安装程序会安装以下组件:
- Federated Authentication Service
- 用于高级 FAS 配置的 PowerShell 管理单元 cmdlet
- FAS 管理控制台
- FAS 组策略模板 (CitrixFederatedAuthenticationService.admx/adml)
- 证书模板文件
- 性能计数器和事件日志
升级 FAS
您可以使用就地升级将 FAS 升级到较新版本。升级前,请考虑以下事项:
- 执行就地升级时,所有 FAS 服务器设置都将保留。
- 在升级 FAS 之前,请确保 FAS 管理控制台已关闭。
- 请确保始终至少有一个 FAS 服务器可用。如果没有 Federation Authentication Service 启用的 StoreFront™ 服务器可以访问的服务器,用户将无法登录或启动应用程序。
要开始升级,请从 Citrix Virtual Apps and Desktops 安装程序或从独立的 FAS 安装程序文件安装 FAS。
在 StoreFront 存储上启用 FAS 插件
注意:
如果您仅将 FAS 与 Citrix Cloud 结合使用,则不需要此步骤。
要在 StoreFront 存储上启用 FAS 集成,请以 Administrator 帐户运行以下 PowerShell cmdlet。如果存储名称不同,请修改 $StoreVirtualPath。
Get-Module "Citrix.StoreFront.*" -ListAvailable | Import-Module
$StoreVirtualPath = "/Citrix/Store"
$store = Get-STFStoreService -VirtualPath $StoreVirtualPath
$auth = Get-STFAuthenticationService -StoreService $store
Set-STFClaimsFactoryNames -AuthenticationService $auth -ClaimsFactoryName "FASClaimsFactory"
Set-STFStoreLaunchOptions -StoreService $store -VdaLogonDataProvider "FASLogonDataProvider"
<!--NeedCopy-->
要停止使用 FAS,请使用以下 PowerShell 脚本:
Get-Module "Citrix.StoreFront.*" -ListAvailable | Import-Module
$StoreVirtualPath = "/Citrix/Store"
$store = Get-STFStoreService -VirtualPath $StoreVirtualPath
$auth = Get-STFAuthenticationService -StoreService $store
Set-STFClaimsFactoryNames -AuthenticationService $auth -ClaimsFactoryName "standardClaimsFactory"
Set-STFStoreLaunchOptions -StoreService $store -VdaLogonDataProvider ""
<!--NeedCopy-->
配置 Delivery Controller™
注意:
如果您仅将 FAS 与 Citrix Cloud 结合使用,则不需要此步骤。
要使用 FAS,请配置 Citrix Virtual Apps 或 Citrix Virtual Desktops™ Delivery Controller 以信任可以连接到它的 StoreFront 服务器:运行 Set-BrokerSite -TrustRequestsSentToTheXmlServicePort $true PowerShell cmdlet。每个站点只需执行一次此操作,无论站点中有多少个 Delivery Controller。
配置组策略
安装 FAS 后,您必须使用安装中提供的组策略模板在组策略中指定 FAS 服务器的完全限定域名 (FQDN)。
重要:
确保请求票证的 StoreFront 服务器和兑换票证的 Virtual Delivery Agents (VDA) 具有相同的 FQDN 配置,包括由组策略对象应用的自动服务器编号。
为简单起见,以下示例在域级别配置了一个适用于所有计算机的策略。但是,这不是必需的。只要 StoreFront 服务器、VDA 和运行 FAS 管理控制台的计算机看到相同的 FQDN 列表,FAS 即可正常运行。请参阅步骤 6。
-
步骤 1. 在安装 FAS 的服务器上,找到 C:\Program Files\Citrix\Federated Authentication Service\PolicyDefinitions\CitrixFederatedAuthenticationService.admx 和 CitrixBase.admx 文件以及 en-US 文件夹。
-

步骤 2. 将这些文件复制到您的域控制器,并将其放置在 C:\Windows\PolicyDefinitions 和 en-US 子文件夹中。
步骤 3. 运行 Microsoft Management Console(从命令行运行 mmc.exe)。从菜单栏中,选择 File > Add/Remove Snap-in(文件 > 添加/删除管理单元)。添加 Group Policy Management Editor(组策略管理编辑器)。
当系统提示您选择组策略对象时,选择 Browse(浏览),然后选择 Default Domain Policy(默认域策略)。或者,您可以使用您选择的工具为您的环境创建并选择一个适当的策略对象。该策略必须应用于所有运行受影响的 Citrix 软件(VDA、StoreFront 服务器、管理工具)的计算机。

步骤 4. 导航到位于 Computer Configuration/Policies/Administrative Templates/Citrix Components/Authentication 中的 Federated Authentication Service 策略。

注意:
联合身份验证服务策略设置仅在您将 CitrixBase.admx/CitrixBase.adml 模板文件添加到 PolicyDefinitions 文件夹时才在域 GPO 上可用。完成步骤 3 后,联合身份验证服务策略设置将列在 管理模板 > Citrix 组件 > 身份验证 文件夹中。
-
步骤 5. 打开联合身份验证服务策略,然后选择已启用。这使您能够选择显示按钮,在此处配置 FAS 服务器的 FQDN。
-

步骤 6. 输入 FAS 服务器的 FQDN。
重要:
如果输入多个 FQDN,则列表的顺序必须与 VDA、StoreFront 服务器(如果存在)和 FAS 服务器所看到的顺序保持一致。请参阅组策略设置。
步骤 7. 单击确定以退出组策略向导并应用组策略更改。您可能需要重新启动计算机(或从命令行运行 gpupdate /force)才能使更改生效。
会话中行为
此策略在用户的 VDA 会话中激活一个代理进程,该进程支持会话中证书、同意和锁定后断开连接。仅当此策略已启用并且用于创建证书的 FAS 规则允许会话中使用时,会话中证书才可用,请参阅配置规则。

启用 启用此策略并允许 FAS 代理进程在用户的 VDA 会话中运行。
禁用 禁用此策略并阻止 FAS 代理进程运行。
提示范围
如果此策略已启用,则提示范围控制如何提示用户同意允许应用程序使用会话中证书。有三个选项:
- 无需同意—此选项禁用安全提示,并以静默方式使用私钥。
- 按进程同意—每个正在运行的程序单独提示同意。
- 按会话同意—用户单击确定后,此设置将应用于会话中的所有程序。
同意超时
如果此策略已启用,则同意超时控制同意持续的时间(以秒为单位)。例如,如果设置为 300 秒,用户每五分钟会看到一次提示。值为零表示每次私钥操作都会提示用户。
锁定后断开连接
如果此策略已启用,则当用户锁定屏幕时,其会话会自动断开连接。此功能提供了与“智能卡移除时断开连接”策略类似的行为,对于用户没有 Active Directory 登录凭据的情况非常有用。
注意:
锁定后断开连接策略适用于 VDA 上的所有会话。
使用联合身份验证服务管理控制台
-
注意:
尽管 FAS 管理控制台适用于大多数部署,但 PowerShell 界面提供了更高级的选项。有关 FAS PowerShell cmdlet 的信息,请参阅 PowerShell cmdlet。
FAS 管理控制台作为 FAS 的一部分安装。开始菜单中会放置一个图标(Citrix 联合身份验证服务)。
首次使用管理控制台时,它会引导您完成部署证书模板、设置证书颁发机构以及授权 FAS 使用证书颁发机构的过程。其中一些步骤也可以使用操作系统配置工具手动完成。
FAS 管理控制台默认连接到本地 FAS 服务。如果需要,您可以使用控制台右上角的连接到另一台服务器连接到远程服务。

部署证书模板
-
为避免与其他软件出现互操作性问题,FAS 提供了三个 Citrix 证书模板供其自身使用。
- Citrix_RegistrationAuthority_ManualAuthorization
- Citrix_RegistrationAuthority
- Citrix_SmartcardLogon
这些模板必须在 Active Directory 中注册。单击部署按钮,然后单击确定。

模板的配置可在随 FAS 安装的扩展名为 .certificatetemplate 的 XML 文件中找到,路径为:
C:\Program Files\Citrix\Federated Authentication Service\CertificateTemplates

如果您没有安装这些模板文件的权限,请将其交给您的 Active Directory 管理员。
要手动安装模板,您可以从包含模板的文件夹中运行以下 PowerShell 命令:
$template = [System.IO.File]::ReadAllBytes("$Pwd\Citrix_SmartcardLogon.certificatetemplate")
$CertEnrol = New-Object -ComObject X509Enrollment.CX509EnrollmentPolicyWebService
$CertEnrol.InitializeImport($template)
$comtemplate = $CertEnrol.GetTemplates().ItemByIndex(0)
$writabletemplate = New-Object -ComObject X509Enrollment.CX509CertificateTemplateADWritable
$writabletemplate.Initialize($comtemplate)
$writabletemplate.Commit(1, $NULL)
<!--NeedCopy-->
设置 Active Directory 证书服务
安装 Citrix 证书模板后,必须将其发布到一个或多个 Microsoft 企业证书颁发机构服务器上。有关如何部署 Active Directory 证书服务的信息,请参阅 Microsoft 文档。
如果模板未发布到至少一个服务器上,请使用 “设置证书颁发机构” 来发布它们。您必须以具有管理证书颁发机构权限的用户身份执行此操作。
(证书模板也可以使用 Microsoft 证书颁发机构控制台发布。)

授权 Federated Authentication Service
此步骤启动 FAS 的授权。管理控制台使用 Citrix_RegistrationAuthority_ManualAuthorization 模板生成证书请求,然后将其发送到正在发布该模板的某个证书颁发机构。

请求发送后,它会显示在 Microsoft 证书颁发机构控制台的 “挂起请求” 列表中,作为来自 FAS 计算机帐户的挂起请求。证书颁发机构管理员必须颁发或拒绝该请求,然后才能继续配置 FAS。
FAS 管理控制台会显示一个忙碌的“旋转图标”,直到管理员选择 “颁发” 或 “拒绝”。
在 Microsoft 证书颁发机构控制台中,右键单击 “所有任务”,然后为证书请求选择 “颁发” 或 “拒绝”。如果您选择 “颁发”,FAS 管理控制台将显示授权证书。如果您选择 “拒绝”,控制台将显示错误消息。

FAS 管理控制台会自动检测此过程何时完成。这可能需要几分钟。

配置规则
FAS 使用规则来授权颁发用于 VDA 登录和会话内使用的证书,具体由 StoreFront 指导。每条规则都指定了受信任的 StoreFront 服务器,这些服务器可以请求证书、可以请求证书的用户集以及允许使用这些证书的 VDA 计算机集。
FAS 需要至少创建和配置一条规则。我们建议您创建一条名为“default”的规则,因为默认情况下,StoreFront 在联系 FAS 时会请求名为“default”的规则。
您可以创建其他自定义规则,以引用不同的证书模板和证书颁发机构,并将其配置为具有不同的属性和权限。这些规则可以配置为供不同的 StoreFront 服务器或 Workspace 使用。使用组策略配置选项,将 StoreFront 服务器配置为按名称请求自定义规则。
单击 “创建”(或在“规则”选项卡上单击 “创建规则”)以启动规则创建向导,该向导会收集创建规则所需的信息。“规则”选项卡会显示每条规则的摘要。

向导会收集以下信息:
模板:用于颁发用户证书的证书模板。这应该是 Citrix_SmartcardLogon 模板,或者是其修改后的副本(请参阅证书模板)。
证书颁发机构:颁发用户证书的证书颁发机构。模板必须由证书颁发机构发布。FAS 支持添加多个证书颁发机构以实现故障转移和负载平衡。请确保您选择的证书颁发机构的状态显示为“模板可用”。请参阅证书颁发机构管理。
会话内使用:“允许会话内使用” 选项控制证书是否可在登录到 VDA 后使用。
- “不允许会话内使用”(默认,建议)—证书仅用于登录或重新连接,并且用户在通过身份验证后无权访问该证书。
- “允许会话内使用” 已选择—用户在通过身份验证后有权访问该证书。大多数客户不应选择此选项。
从 VDA 会话中访问的资源(例如 Intranet 网站或文件共享)可以使用 Kerberos 单点登录进行访问,因此不需要会话内证书。
如果您选择 “允许会话内使用”,则还必须启用 会话内行为 组策略并将其应用于 VDA。然后,证书会在登录后放置在用户的个人证书存储中以供应用程序使用。例如,如果您需要对 VDA 会话中的 Web 服务器进行 TLS 身份验证,则 Internet Explorer 可以使用该证书。
访问控制:受信任的 StoreFront 服务器计算机列表,这些计算机有权为用户登录或重新连接请求证书。对于所有这些权限,您可以添加单个 AD 对象或组。
重要提示:
“访问控制”设置对安全性至关重要,必须谨慎管理。
注意:
如果您仅将 FAS 服务器与 Citrix Cloud 结合使用,则无需配置访问控制。当 Citrix Cloud 使用某个规则时,StoreFront 访问权限将被忽略。您可以将同一规则与 Citrix Cloud 和本地 StoreFront 部署结合使用。当本地 StoreFront 使用该规则时,StoreFront 访问权限仍然适用。
默认权限(允许“断言身份”)会拒绝所有内容。因此,您必须明确允许您的 StoreFront 服务器。

限制:可以使用 FAS 登录用户的 VDA 计算机列表以及可以通过 FAS 颁发证书的用户列表。
-
管理 VDA 权限允许您指定哪些 VDA 可以使用 FAS 登录用户。VDA 列表默认为“域计算机”。
-
管理用户权限允许您指定哪些用户可以使用 FAS 登录 VDA。用户列表默认为“域用户”。
注意:
如果 FAS 服务器与 VDA 和用户位于不同的域中,则必须修改默认限制。


云规则:指示当从 Citrix Workspace 收到身份断言时是否应用该规则。连接到 Citrix Cloud 时,您可以选择要用于 Citrix Cloud 的规则。连接到 Citrix Cloud 后,您还可以通过“连接到 Citrix Cloud”部分中的链接更改规则。

连接到 Citrix Cloud
您可以将 FAS 服务器与 Citrix Workspace 连接到 Citrix Cloud。请参阅此 Citrix Workspace 文章。
-
在“初始设置”选项卡中,在“连接到 Citrix Cloud”下单击“连接”。

-
选择要连接到的云,然后单击“下一步”。

注意
预览版中仅提供 Citrix Cloud。
-
窗口将显示一个唯一的注册码,该注册码必须在 Citrix Cloud 中获得批准。有关详细信息,请参阅在 Citrix Cloud 中注册本地产品。

-
注册码验证通过后,从下拉列表中选择所需的“资源位置”。

-
如果适用,选择客户帐户,然后选择要连接 FAS 服务器的资源位置。单击“继续”,然后关闭确认窗口。
-
在“选择规则”部分中,使用现有规则或创建规则。单击“下一步”。

-
在“摘要”部分中,单击“完成”以完成 Citrix Cloud 连接。

Citrix Cloud 会注册 FAS 服务器并将其显示在您的 Citrix Cloud 帐户的“资源位置”页面上。
断开与 Citrix Cloud 的连接
从 Citrix Cloud 资源位置中删除 FAS 服务器后(如本 Citrix Workspace 文章中所述),在“连接到 Citrix Cloud”中选择“禁用”。