管理安全密钥
注意:
必须将此功能与 StoreFront 1912 LTSR CU2 或更高版本结合使用。
此功能允许您仅允许经批准的 StoreFront 和 Citrix Gateway 计算机与 Delivery Controller 进行通信。启用此功能后,将阻止不包含该密钥的任何请求。使用此功能可添加额外的安全层,以防止来自内部网络的攻击。
使用此功能的常规工作流程如下:
-
通过使用 PowerShell SDK 在 Studio 中启用该功能。
-
在 Studio 中配置各项设置。(使用 Studio 控制台或 PowerShell)。
-
在 StoreFront 中配置各项设置。(使用 PowerShell)。
启用安全密钥功能
默认情况下,该功能处于禁用状态。要将其启用,请执行以下步骤:
-
在运行 Citrix Studio 控制台的计算机上,打开 PowerShell 窗口。
-
运行以下命令:
asnp Citrix*Set-ConfigSiteMetadata -Name "Citrix_DesktopStudio_SecurityKeyManagementEnabled" -Value "True"
在 Studio 中配置各项设置
您可以通过使用 Studio 控制台或 PowerShell 在 Studio 中配置各项设置。
使用 Studio 控制台
启用该功能后,请导航到 Studio > 配置 > 管理安全密钥。您可能需要单击刷新才能显示管理安全密钥选项。
单击管理安全密钥后,将显示管理安全密钥窗口。

重要:
- 有两个密钥可供使用。通过 XML 和 STA 端口进行通信时,您可以使用相同的密钥或不同的密钥。我们建议您一次仅使用一个密钥。未使用的密钥仅用于密钥轮换。
- 请勿单击刷新图标以更新已在使用的密钥。如果这样做,将会发生服务中断。
单击刷新图标以生成新密钥。
需要密钥才能通过 XML 端口进行通信(仅限 StoreFront)。如果选择此选项,则需要密钥才能对通过 XML 端口进行的通信执行身份验证。StoreFront 通过此端口与 Delivery Controller 进行通信。有关更改 XML 端口的信息,请参阅知识中心文章 CTX127945。
需要密钥才能通过 STA 端口进行通信。如果选择此选项,则需要密钥才能对通过 STA 端口进行的通信执行身份验证。Citrix Gateway 和 StoreFront 通过此端口与 Delivery Controller 进行通信。有关更改 STA 端口的信息,请参阅知识中心文章 CTX101988。
应用更改后,单击关闭退出管理安全密钥窗口。
使用 PowerShell
以下是相当于 Studio 操作的 PowerShell 步骤。
-
在运行 Citrix Studio 控制台的计算机上,打开 PowerShell 窗口。
- 在命令窗口中,运行以下命令:
asnp Citrix*
- 运行以下命令以生成密钥并设置 Key1:
New-BrokerXmlServiceKeySet-BrokerSite -XmlServiceKey1 <the key you generated>
- 运行以下命令以生成密钥并设置 Key2:
New-BrokerXmlServiceKeySet-BrokerSite -XmlServiceKey2 <the key you generated>
- 运行以下一个或两个命令以在对通信进行身份验证时使用密钥:
- 要对通过 XML 端口进行的通信执行身份验证,请执行以下操作:
Set-BrokerSite -RequireXmlServiceKeyForNFuse $true
- 要对通过 STA 端口进行的通信执行身份验证,请执行以下操作:
Set-BrokerSite -RequireXmlServiceKeyForSta $true
- 要对通过 XML 端口进行的通信执行身份验证,请执行以下操作:
有关指导和语法,请参阅 PowerShell 命令帮助。
在 StoreFront 中配置各项设置
在 Studio 中完成配置后,您需要在 StoreFront 中使用 PowerShell 配置相关设置。
在 StoreFront 服务器上,运行以下 PowerShell 命令:
- 要配置通过 XML 端口进行通信所需的密钥,请使用
Get-STFStoreServie和Set-STFStoreService命令。例如:PS C:\> Set-STFStoreFarm $farm -Farmtype XenDesktop -Port 80 -TransportType HTTP -Servers <domain name1, domain name2> -XMLValidationEnabled $true -XMLValidationSecret <the key you generated in Studio>
- 要配置通过 STA 端口进行通信所需的密钥,请使用
New-STFSecureTicketAuthority命令。例如:PS C:\> $sta = New-STFSecureTicketAuthority –StaUrl <STA URL> -StaValidationEnabled $true -StavalidationSecret <the key you generated in Studio>
有关指导和语法,请参阅 PowerShell 命令帮助。