WCF 服务失去对客户端证书的访问权限



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

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

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

客户端证书安装在"本地计算机"的"个人"下。

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

WinHttpCertCfg.exe -g -c LOCAL_MACHINEMY -s "*Cer CN*" -a "*My User*"
服务启动后,

我可以成功访问第三方服务,但是经过几个小时的工作,我收到SSL证书错误,该错误在重新启动Windows服务后得到修复

我该如何解决这个问题?

如果您的服务之前已启动并运行,但经过一段时间后,偶尔会出现失败,表示 SSL 证书链已崩溃。
我建议您更新 Dotnetframework 版本或操作系统版本,因为使用证书协议需要先决条件。

https://learn.microsoft.com/en-us/dotnet/framework/network-programming/tls此外,建议您不要使用自签名证书,在证书存储中,右键单击证书、所有任务、管理私钥菜单以添加相应的用户组。
如果问题仍然存在,请随时告诉我。

最新更新