首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >覆盖HTTPS证书

覆盖HTTPS证书
EN

Stack Overflow用户
提问于 2017-12-13 15:57:12
回答 1查看 1.1K关注 0票数 0

我使用一个URL来连接一个使用SOAP的web服务。显然,URL没有一个正确的https协议,如果我想通过浏览器访问它,我需要接受这个连接所具有的‘风险’。

当我想以编程方式访问时,我的问题就开始了。当我试图发送SOAP POST请求时,连接将被关闭并捕获异常。

“基础连接已关闭:无法为SSL/TLS安全通道建立信任关系。”

显然,这个问题很常见,可以找到很多资源,thisthis是最受欢迎的。

当我尝试这部分代码时:

ServicePointManager.ServerCertificateValidationCallback += (sender, cert, chain, sslPolicyErrors) => true;

不仅这种联系不起作用,而且现在我得到了一个:

“远程服务器返回一个错误:(500)内部服务器错误。”

现在我的问题是。上面的代码将协议从https切换到http

如果不是,这一行代码真正做了什么?

EN

回答 1

Stack Overflow用户

发布于 2017-12-13 16:37:40

我不知道这是否是你的答案,但由于不适合发表评论.

不要绕过证书验证。您可能只需要设置TLS的正确版本。您可以尝试在同一时间使用一个版本来找到支持的最高版本,而不是将它们放在一起。

代码语言:javascript
复制
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12

如果这样做不起作用,您可能需要获得一个证书,要么是服务使用的证书,要么是证书链中更高的证书。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47797298

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档