通过WCF调用HttpWebRequest时失败

本文关键字:失败 HttpWebRequest 调用 WCF 通过 | 更新日期: 2023-09-27 18:26:58

我写了一段代码,它将SOAP信封传递给客户端。请求携带一个证书,有效负载使用证书进行签名。我编写了一个测试工具,它使用HttpWebRequest成功地调用了服务器。该源已集成到另一个项目WCF服务中。我们使用SoapUi来调用我们的服务,而服务又使用HttpWebRequest来调用客户端。当我们部署测试工具或服务时,它位于同一服务器上的同一应用程序文件夹中。

据我所知,我的来源和他们的来源之间没有材料差异。然而,他们的代码总是失败,并出现证书错误:"基础连接已关闭:无法为SSL/TLS安全通道建立信任关系"。这个错误以前已经讨论过了,最完整的讨论似乎在这里(错误:C#底层连接已关闭:无法为SSL/TLS安全通道建立信任关系),但所涵盖的方法对我不起作用。

HttpWebRequest的行为会因为从WCF服务中调用而改变吗?我不知道下一步该往哪里看。

通过WCF调用HttpWebRequest时失败

该错误表示调用方(在本例中为您的服务)不信任服务器使用的证书。对于交互式用户和系统用户,存在不同的信任存储。因此,如果您的服务在IIS上运行,那么您使用的用户与单元测试中的用户不同,并且该用户使用的是系统信任存储。根据您的需要,在您发送的链接中应用变通方法,或将正确的证书添加到存储中。