Windows服务重启后“无法创建SSL / TLS安全通道”

时间:2016-11-29 16:13:03

标签: c# windows ssl

我有一个在带有Service Pack 1的Windows Server 2008 R2 Standard上运行的C#Windows服务。当我重新启动服务器计算机并启动Windows服务时,它可以成功协商与第三方服务器的安全连接,但是,如果我停止并重新启动该服务,它将开始失败并显示“无法创建SSL / TLS安全通道”的C#代码异常,并且Windows事件日志显示“收到以下致命警报:48。”,根据此网站:

 https://blogs.msdn.microsoft.com/kaushal/2012/10/05/ssltls-alert-protocol-the-alert-codes/

表示证书未完全验证,但是,它在某种情况下工作:如果我重新启动服务器计算机本机并重新启动Windows服务,它将再次开始工作。如果我停止服务并重新启动它(没有重新启动服务器机器),它将停止工作。

C#4.0代码从正在访问System.Net.HttpWebRequest的第三方服务器添加自签名证书以访问第三方服务器,并将三个第三方证书加载到服务器计算机的Windows中证书存储 - 运行Windows服务的Windows帐户下的根CA(.CER文件),中间CA(.CER文件)和实际证书(.PFX文件)。

这已经发生在三台不同的服务器机器上一年或更长时间了,我已经在这个错误消息的许多其他各种渗透中查看了SO,但它们似乎是一个全有或全无的问题而不依赖于一系列的重启/重启,主要集中在改变代码,在我的例子中,代码在某些特定条件下工作。

关于服务的初始运行正在做什么以避免将来的服务重启无法正常工作的任何想法?我知道SSL的各种Windows更新/安全补丁都存在问题,但我不清楚哪些可能导致此问题。

0 个答案:

没有答案