密钥存储提供程序 (KSP) 远程处理 (预览版)
简介
以前,从 Windows VDA 到 FAS 服务器的加密操作远程处理是通过使用在 VDA 上运行的一对加密服务提供程序 (CSP) 实现的:
-
CitrixLogonCsp.dll- 用于对 VDA 进行单点登录 (SSO) -
CitrixVirtualSmartcardCsp.dll- 用于会话内证书
借助此功能,加密操作远程处理也可以通过使用一对 KSP 来实现:
-
CitrixLogonKsp.dll- 用于对 VDA 进行 SSO -
CitrixVirtualSmartcardKsp.dll- 用于会话内证书
KSP 是向 Windows 应用程序公开加密操作的最新方式,它提供了更多功能。例如:
-
支持带 ECC 密钥的证书
-
概率签名方案 (PSS) 填充受支持
注意:
无法在 FAS 上启用 ECC 密钥。
启用 KSP 远程处理
通过创建以下注册表项来启用 KSP 远程处理:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Citrix\Authentication\UserCredentialService\RemoteKspFeature
类型:
string
值:
on
-
FAS 服务器和 VDA 软件都必须运行 CVAD 2407 软件。
-
通过在 FAS 服务器和 VDA 上创建注册表项来启用 KSP 远程处理。
-
重新启动 FAS 服务器和 VDA 以使更改生效。
如果上述任何条件未满足,VDA 将回退到使用 CSP 远程处理。
验证 KSP 远程处理是否已开启
在 FAS 服务器上,您可以使用 Powershell 检查 KSP 远程处理是否已开启:
要检查 KSP 远程处理是否已用于 VDA SSO,请在 FAS 服务器的 Windows 应用程序日志中查找以下事件:
操作
SignHash2 表示使用 KSP 远程处理,而 SignHash 表示 CSP 远程处理。
同样,当会话内证书用于加密(例如 TLS 客户端身份验证)时,请在 FAS 服务器上查找以下事件:
已知限制
仅当 FAS 本身配置为使用 KSP 时才支持 KSP 远程处理。这是默认配置。如果 FAS 配置为使用 CSP,KSP 远程处理将不起作用。
相关设置是:
<add key="Citrix.TrustFabric.ClientSDK.TrustAreaJoinParameters.ProviderLegacyCsp" value="false" /> 在文件 %programfiles%\Citrix\Federated Authentication Service\Citrix.Authentication.FederatedAuthenticationService.exe.config 中
在此,
False 表示 FAS 配置了 KSP,因此支持 KSP 远程处理。