Wcf服务无法访问客户端证书

时间:2019-06-03 08:55:03

标签: c# wcf ssl-certificate windows-server-2012

我正在通过Windows NT服务托管WCF服务。

Windows服务在本地计算机用户下运行,该用户不包含在本地计算机管理员组中。

Wcf服务调用使用第三方证书进行客户端身份验证的第三方WCF服务。

Clilent证书安装在“本地计算机”的“个人”下。

我还下载了“ Windows HTTP服务证书配置工具” https://download.microsoft.com/download/4/5/b/45bab62d-cdd8-42c7-85d0-0275b96db2c5/winhttpcertcfg.msi,并授予NT服务用户访问客户端证书的权限

WinHttpCertCfg.exe -g -c LOCAL_MACHINE\MY -s "*Cer CN*" -a "*My User*"

服务启动后,我可以成功访问3rd Party服务,但是经过几个小时的工作,我收到了SSL证书错误,该错误在重新启动Windows服务后得到了解决

我该如何解决?

1 个答案:

答案 0 :(得分:0)

如果您的服务在运行之前但已启动并运行了一段时间,则偶尔会出现故障,表明SSL证书链已崩溃。
我建议您更新Dotnetframework版本或操作系统版本,因为使用证书协议需要先决条件。
https://docs.microsoft.com/en-us/dotnet/framework/network-programming/tls
另外,建议您不要使用自签名证书,并在证书存储中,右键单击证书,“所有任务”,管理私钥菜单以添加适当的用户组。
如果问题仍然存在,请随时告诉我。