iis 无法为SSL/TLS安全通道建立信任关系- SOAP服务

huwehgph  于 2023-06-23  发布在  其他
关注(0)|答案(2)|浏览(414)

我在里面有一个SOAP Web服务,我正在调用一个第三方安全的Web服务(以前是HTTP,现在他们保护了它)。他们有有效的SSL证书。在调用第三方服务时,我收到以下错误,

  • 服务器无法处理请求。--->基础连接已关闭:无法在System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest请求)的System. Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName,Object[] parameters)* 上为SSL/TLS安全通道建立信任关系

有几篇文章说TLS 1.2应该被启用,为了进一步检查TLS,我在我的服务器上有下面的组件,x1c 0d1x
这里是第三方服务电话,

谁能告诉我,我应该在哪里建立信任关系?我是否需要修改我的代码或只是一些配置的变化需要

jhdbpxl9

jhdbpxl91#

除了上面Abraham帖子之外,还要确保IIS对证书有足够的访问权限。我们遇到了这个问题,起初,似乎应用程序可以访问证书,但事实并非如此。我们通过进入管理证书->个人->证书->右键单击证书->所有任务->管理私钥->添加->授予“每个人”访问权限(仅测试,您应该只授予对IIS的访问权限)来修复它。这样做后连接工作。

dvtswwa3

dvtswwa32#

在安全通信期间存在交换服务证书的公钥的过程。因此,我们应该建立客户端和服务器端之间的信任关系。对于相互认证,应建立相互信任关系。
信任关系表示证书是有效的,服务器是真实的和安全的。也就是说,它表示这是对服务器身份的验证。这也可以通过下面的代码段来实现。

//adding below code segments to ignore the service certificate validation.
            ServicePointManager.ServerCertificateValidationCallback += delegate
            {
                return true;
            };
            ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Ssl3;

更常见的是,这应该通过在本地受信任的证书颁发机构中安装服务根证书来完成。

要获得证书,您可以

  1. 1、向服务商索要,可以索要Root CA证书,可以一次性授权所有需要的服务器;
    1.使用Web浏览器获取证书。使用HTTPS()访问服务创建页面。然后使用Web浏览器选项将证书导出到.cer文件。
    安装证书。
    双击.cer文件以安装证书。选择“本地计算机”,然后选择“受信任的根证书颁发机构”。
    下面是详细的步骤。
    https://success.outsystems.com/Support/Enterprise_Customers/Installation/Install_a_trusted_root_CA__or_self-signed_certificate
    如果有什么我能帮忙的,请随时告诉我。

相关问题