【问题标题】:Error: Could not establish trust relationship for the SSL/TLS secure channel with authority错误:无法为具有权限的 SSL/TLS 安全通道建立信任关系
【发布时间】:2013-05-07 23:56:56
【问题描述】:

我有一个 wfc VS 2010/C# 程序,它已经在 Win03 服务器上运行了 6 个月而没有问题。该应用程序使用远程服务器的公钥发送请求,然后使用我们的私钥解密返回的响应。

我们的证书即将到期,因此我们发布了一个新证书。我们将公钥提供给远程人员,并将私钥文件安装在服务器上,这是一个密码保护 P12。我也在我的开发机器上安装了它。

开发机器没有问题。我可以像以前一样发送请求并获得响应。我的开发机器是64位的Win7。在 Win03 服务器生产机器上,我收到以下错误:无法为 SSL/TLS 安全通道建立信任关系,权限为“{远程服务器的公钥名称}”。

远程服务器的公钥在我的证书存储中具有有效日期和有效链。此密钥上方的链中有两个证书,它们都有有效的日期和链。我已卸载并重新安装了所有证书,但无法通过此操作。我不知道是什么原因造成的。

当我在 Google 上“无法为具有权限的 SSL/TLS 安全通道建立信任关系”时,我看到了解决相同问题的数十种“解决方案”,它们都涉及代码更改。这似乎不是我要找的。代码在开发机器上运行良好,直到今天早上在生产服务器上运行良好。唯一改变的是我们的证书。

我注意到的一件事是 Win03 服务器没有本地计算机证书存储,所以我不可能在那里安装证书。当我导入证书时,我有时让向导决定将证书放在哪里,而其他时候则告诉它把证书放在哪里。两者的反应相同。我始终以管理员身份登录并始终在管理员下运行应用程序。

知道是什么导致了我的问题吗?

更新> 当我运行编译的程序时,我的开发 PC 上遇到了同样的问题。但是,当我运行编译后的程序并尝试使用 Fiddler 查看输出时,我从 Fiddler 收到以下消息。如果我说是,请求会按预期返回。如果我说不,我会得到 100% 的失败,就像服务器上的可执行文件一样。

无法为 SSL/TLS 安全通道建立信任关系 权限为“555.555.555.555”。

会话 #1:远程服务器 (555.555.555.555) 提供了证书 由于 RemoteCertificateNameMismatch,未验证。

主题:CN=prods-dp.wellpoint.com,OU=SOA CoE,O=Wellpoint, L=里士满,S=弗吉尼亚,C=美国

发行人:CN=Anthem Inc 证书颁发机构,OU=Ecommerce,O=Anthem 公司,C=美国

到期:2013 年 7 月 10 日上午 6:39:09

(可以通过单击工具 | Fiddler 选项来禁用此警告。)

格雷格

【问题讨论】:

    标签: c# visual-studio-2010 web-services ssl-certificate


    【解决方案1】:

    我在 app.congif 中引用了 IP 地址,而不是域名。

    错了

    我不确定这是否是因为我有将域名作为端点的一部分引用的身份块,就像这样......

        <identity>
          <dns value="thewebservicedomain.com" />
        </identity>
    

    格雷格

    【讨论】:

      猜你喜欢
      • 2023-03-15
      • 2013-03-22
      • 1970-01-01
      • 2010-12-17
      • 2018-11-10
      • 2014-08-07
      • 1970-01-01
      • 2015-02-12
      相关资源
      最近更新 更多