我开发了一个客户端应用程序来使用Web服务,
我的代码中没有错误,但是当我调试时,我得到以下异常,
'WebException未处理 - 底层连接已关闭:无法为SSL / TLS安全通道建立信任关系。'
我认为这与我尝试使用的安全网络服务这一事实有关, 所以我的问题是,由于安全证书未正确安装会发生此错误吗?如果有,是否有办法将证书手动安装到应用程序中?
感谢您的时间。
答案 0 :(得分:1)
这基本上是缺少信任的问题。服务器的ssl证书需要由使用客户端信任。有两种方法可以解决这个问题:
将服务器的SSL证书添加到运行应用程序的用户(或运行应用程序的计算机的受信任人员)证书存储区(LocalMacine / TrustedPeople)
您可以使用X509CertificateStore
类以编程方式将证书添加到相应的商店,因此基本上您可以使用您的应用程序分发服务器的ssl证书的公钥,并在需要时安装它。
答案 1 :(得分:1)
我同意@Klaus Byskov Hoffmann,但我想补充一下他的答案。如果用于访问服务的服务器域名与分配给它的证书不完全相同,也可能发生这种情况。即使两个名称都适用于机器,它也会使证书无效。