当我尝试使用客户端证书将测试客户端应用程序连接到WCF服务(.NET Framework 4.5)时,在客户端收到以下错误:
System.ServiceModel.Security.SecurityNegotiationException:无法使用权限“ MyServer.com:12345”为SSL / TLS建立安全通道。 ---> System.Net.WebException:请求已中止:无法创建SSL / TLS安全通道。
客户端和服务器都可以在某些计算机上工作,但在其他计算机上并且使用不同的证书,则会显示上述错误。
服务器证书是CA签名的,客户端证书是自签名的。服务器证书安装在Local Machine Personal
证书存储区中(带有私钥),客户端证书安装在Local Machine Personal
和Local Machine Trusted Root Certification Authorities
证书存储区中(带有私钥)。证书尚未过期,并且机器上的时间正确。这两个应用程序都在一台Windows 2016计算机上运行。
一个奇怪的发现是,该连接似乎只工作了一次,但在更改为其他证书后又停止了工作。然后,当更改回原始证书时,它也不再适用。
是什么导致仅在某些计算机上或仅具有某些证书的错误发生?有没有一种方法可以进一步诊断为什么无法创建SSL / TLS通道?