stackoverflow上有很多这个问题的版本。我已经尝试了很多建议的解决方案 - 但这些都不适合我。
我在Windows Server 2008上的IIS上运行了一个VB ASP.NET应用程序。它调用了一个Web服务。运行Web Service的服务器具有自签名证书。我已将Cert导入IIS计算机的Trust Store。我可以在IE->选项 - >内容 - >证书 - >受信任的根证书颁发机构中看到证书。
调用webservice时,抛出异常
基础连接已关闭:无法为SSL / TLS安全通道建立信任关系。
相同的IIS VB ASP.NET应用程序在另一台具有类似设置的计算机上运行正常。
这些是我检查的不同基本内容
我在VB.NET中编写了一个小命令行测试程序,调用相同的web服务运行良好。
将Cert导入可信CA存储后,我已经完成了iisreset。
我还没有尝试过的是重新启动IIS机器 - 这是生产机器&我至少在几天内无法重启。
我还能尝试什么?
答案 0 :(得分:4)
Internet Explorer证书设置仅适用于当前用户。 高度不太可能与您在操作IE时登录的同一用户与用于托管IIS应用程序的用户相同。您可以将证书添加到相应服务帐户的受信任证书,但更简单的方法是将其添加到本地计算机"值得信赖的证书。
运行Microsoft管理控制台(在运行对话框中键入" mmc"文件>添加/删除管理单元>证书,选择"计算机帐户"用于管理证书。这样,服务器上的任何用户或服务帐户都会将证书视为可信任。
或者,根据您访问网络服务的方式,您可以在应用程序本身中添加例外。我建议使用代码来检查证书的指纹/散列,而不是允许它连接到任何不受信任的证书。