【问题标题】:WCF : Could not establish trust relationship for the SSL/TLS secure channel with authority errorWCF:无法为 SSL/TLS 安全通道建立信任关系,出现权限错误
【发布时间】:2013-10-29 22:14:14
【问题描述】:

我有一个客户端站点,当单击按钮时,它会调用 wcf Web 服务。客户端站点是 http,而 Web 服务的 url 是 https 并且需要证书。我有一个正在使用的有效签名私钥证书。

在我的本地主机上一切正常;但是,在部署到运行 iis 6 的 windows 2003 服务器后,调用 Web 服务时出现以下错误:

无法为 SSL/TLS 安全通道建立信任关系 具有权限“主机的网址”

我使用在本地工作的相同 web.config 将证书添加到商店。我已验证 Web 服务调用找到并设置了有效的 X509Certificate。

不确定我错过了什么,我不想每次都重写 servicepiint 管理器以返回 true。

我可能会研究什么想法或事情?

【问题讨论】:

标签: vb.net visual-studio-2010 web-services ssl-certificate


【解决方案1】:

找到问题了。

我的服务器不信任 Web 服务主机使用的根证书。 (不知道为什么它在我的本地机器上而不是我的服务器上)。我通过在服务器的网络浏览器中打开主机的 url 来查看他们的 wsdl 并收到安全警告,发现了这一点。

补救措施:去颁发者的网站下载他们的根证书并添加到我信任的根证书颁发机构。

Bam,它现在可以工作了。

【讨论】:

  • 如果你一直在使用 Fiddler 调试服务调用并使用它的证书拦截模式,你可能会得到这个。只需删除提琴手选项中的拦截,您应该会很好
【解决方案2】:

如果它是私有证书,则必须将其添加到客户端和服务器,因为没有客户端可以验证其根密钥。

【讨论】:

  • https Web 服务调用独立于客户端应用程序。我可能应该更清楚一点,用户单击一个调用本地 Web 服务的按钮,然后在后面的代码中调用 https 外部 Web 服务。
猜你喜欢
  • 2023-03-15
  • 1970-01-01
  • 2010-12-17
  • 2018-11-10
  • 2014-08-07
  • 1970-01-01
  • 2015-02-12
  • 1970-01-01
相关资源
最近更新 更多