SSL/TLS安全通道建立的WebService 调用

解决无法建立SSL / TLS安全通道(The request was aborted: Could not create SSL/TLS secure channel)的问题 解决无法建立SSL / TLS安全通道(The request was aborted: Could not create SSL/TLS secure channel)的问题,未包含"Tls11"的定义,未包含"Tls12"的定义 阅读详情

今天写程序的时候调用到一个第三方的DLL文件,本机调试一切都正常,但是程序不是到服务器以后一直提示一个BUG:"基础连接已经关闭: 未能为SSL/TLS 安全通道建立信任关系"。
后来把DLL文件进行反编译,发现是在获得请求的时候出错了。

引用

WebResponse response = WebRequest.Create("https://……").GetResponse();



于是在服务器上用浏览器打开上面的地址,发现会弹出一个确认证书的窗口,看来是证书问题。
在网上一顿搜索,发现了一个决绝办法甚是好用,而且很简单,在请求之前添加一行代码。

C#代码 复制代码
  1. ServicePointManager.CertificatePolicy = new AcceptAllCertificatePolicy();  


其中AcceptAllCertificatePolicy需要自己定义:

C#代码 复制代码
  1. internal class AcceptAllCertificatePolicy : ICertificatePolicy   
  2.     {   
  3.         public AcceptAllCertificatePolicy()   
  4.         {   
  5.         }   
  6.   
  7.         public bool CheckValidationResult(ServicePoint sPoint,   
  8.            X509Certificate cert, WebRequest wRequest, int certProb)   
  9.         {   
  10.             // Always accept   
  11.             return true;   
  12.         }   
  13.     }  




以上方法虽然解决了遇到的问题,可是在VS中会提示ServicePointManager.CertificatePolicy已经被否决。由于我是一个喜欢完美的人,于是按照提示使用新的方法来处理。
改造后的代码更加简洁和明了

C#代码 复制代码
  1. ServicePointManager.ServerCertificateValidationCallback = ValidateServerCertificate;  

 

C#代码 复制代码
  1. private bool ValidateServerCertificate(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)   
  2.         {   
  3.             return true;   
  4.         }  



就这样了,一个委托搞定!

 

 

 

加入命名空间:

 

using System.Net;
using System.Net.Security;
using System.Security.Authentication;
using System.Security.Cryptography.X509Certificates;

调用Https WebService发布后使用时报“基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系”证书验证失败的解决过程(3)  调用Https WebService发布后使用时报“基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系”证书验证失败的解决过程(3)2010-03-23 20:03 by 苏飞, 0 visits, <a onclick="function onclick(){PutInWz();return false;}" href="#">网摘, 收藏, 编辑Ht 阅读详情

相关推荐

c#: 请求被中止: 未能创建 SSL/TLS 安全通道。

调用第三方的数据上传接口,使用http一切正常,然而使用https报错“请求被中止: 未能创建 SSL/TLS 安全通道。” 然而,使用微信小程序连接该域名其他接口是正常了,说明该服务器是支持https的。因为考虑到之前做小程序开发时让后台升级过tsl到1.2,所以想,这次是不是也是因为tsl版本支持的问题呢? 到myssl.com提交域名进行校验,果然,该域名只支持tsl1.2,不支持1.0与...

IT老五 3995

HTTPS接口 无法建立SSL - TLS安全通道的解决方案 (总结性)

访问HTTPS接口时,总是出现请求被中止:无法建立SSL / TLS安全通道的解决方案我使用HttpWebRequest访问HTTPS的接口时时,出现"请求被中止:无法建立 SSL /TLS安全通道"错误,百度了一下,搜到两个答案,都写下来,以供参考第一个://必须写在请求Url之前如果你的程序是.NET 4.0的,可以这样写:第二个//必须在请求URL之前//验证服务证书 返回True 解决Https无法建立 SSL / TLS安全通道"错误。

xnxqwzy的博客 3459

Pyinstaller 打包 Pyzbar 时缺失 DLL 文件的排查与修复指南

本文详细解析了使用Pyinstaller打包Pyzbar库时,因缺失关键DLL文件导致程序闪退的常见问题。文章提供了从问题复现、错误诊断到最终修复的完整解决方案,核心在于通过修改.spec配置文件,手动将缺失的libzbar-64.dll等文件添加到打包过程中,确保生成的可执行文件能独立运行。

wdx012345的博客 502

彻底解决:请求被中止: 未能创建 SSL/TLS 安全通道

最近有个项目要调用客户用java写的带https的webservice,对方提供了证书文件 test.pfx,我这里调用方式如下: //webservice代理类 SvcService svc = new SvcService(); //证书文件路径 string filePath = ConfigurationManager.AppSettings["pfxUrl"]; X509C...

weixin_30731287的博客 2654

深入解析SPLL单相软件锁相环:从SOGI原理到PI系数调优实践

本文深入解析SPLL单相软件锁相环技术,从SOGI原理到PI系数调优实践,详细介绍了其在数字电源设计中的应用。通过数学推导和实际调试经验,帮助工程师快速掌握锁相环的核心参数计算和优化方法,提升电网相位追踪的精确度和响应速度。

weixin_30316097的博客 380

VS2019 +osg3.6.5+ earth3.2+qt5.14.2+osgQt 编译教程

用vs新建工程,稍后会在写一篇博客上分享四、结语至此,所有的编译就均已完成。

king_ink的博客 1134

两种方式彻底解决请求被中止: 未能创建 SSL/TLS 安全通道

两种方式彻底解决请求被中止: 未能创建 SSL/TLS 安全通道

qq_30412045的博客 3万+

在MATLAB产生正态(Gauss)分布随机数

在 MATLAB 中内置了有产生标准正态(Gauss)分布的随机数函数,使用方法如下: 其中 为产生矩阵的行数和列数, 为产生矩阵的个数,产生的矩阵中的每个元素均为服从 N(0,1)N(0, 1)N(0,1) 的标准正态分布的元素。使用如下命令产生一个 的服从的随机数矩阵: 绘制图像效果如下: 可以看到这里随机数服从 的标准正态分布。假设 X∼N(0,1)X\sim N(0,1)X∼N(0,1),则 3X+33X+33X+3 服从 N(3,9)N(3,9)N(3,9) 分布,因此我们要产生服从 N(

程序必须为人类阅读而编写,并且仅仅碰巧可以让机器执行 3万+

c# 调用webservice未能连接到服务器连接不上报登录失败,C#动态调用webService出现 基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系。...

这里因为的原因是https请求要检查证书,有些证书不正确的,网页不会正常展示内容,而会返回链接不安全,是否继续。不安全的链接是否继续。详情参考:我的代码片段using System.Net.Http;using System.Net.Security;using System.Security.Cryptography.X509Certificates;using System.Security....

weixin_36429702的博客 1191

【从零开始入门unity游戏开发之——C#篇37】进程、线程、C# 中实现多线程有多种方案和async/await异步编程

进程、线程、C# 中实现多线程有多种方案和async/await异步编程

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 1467

一、【vmware虚拟机使用】安装vmware workstations17

本文介绍了VMware Workstation 17的安装与网络配置方法。主要内容包括:通过下载安装包进行标准安装(含许可协议、路径选择等步骤);重点讲解了NAT模式下的网络配置,包括修改子网IP为192.168.2.0网段、设置网关地址和DHCP范围等操作,以避免与主机网络冲突。文章还简要说明了VMware的Hypervisor核心技术原理,包括CPU、内存和存储虚拟化。最后指出完成这些准备工作后,后续将进行CentOS7系统的安装。整个流程配有详细图文说明,适合初学者跟随操作。

信创运维工程师 · 银河麒麟 & 容器实战 | 金融生产环境迁移·等保加固 | 142篇原创·17万+阅读 2736

C#动态调用webService出现 基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系。...

在远程调用WebService时出现下面的情况: 这种情况一般是由于证书有问题时出现,如果在浏览器中打开是这种情况: 解决方法新建一个类,代码如下: 1 public static class CertificateTrust 2 { 3 4 public st...

datian0606的博客 922

RK3588 ENV 环境配置之 fw_printenv

RK3588 ENV环境配置指南 本文详细介绍了在RK3588平台上配置ENV环境变量的完整流程。首先需要在parameter分区表中划分env分区,然后在U-Boot中配置MMC偏移地址。接着编译fw_printenv工具并部署到目标设备,配置fw_env.config文件指定存储位置。重点解决了内核中读写ENV时遇到的CRC校验问题,通过U-Boot的saveenv命令初始化环境变量存储区域。最后展示了如何使用fw_printenv/fw_setenv工具在内核中读写ENV变量,并建议将配置集成到根文件

501846585_QQAndroid_java 1032

C#编程之C#动态调用webService出现 基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系

C#动态调用webService出现 基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系,通过具体的内容向大家展示,希望对大家学习C#编程有所帮助。 这里因为的原因是https请求要检查证书,有些证书不正确的,网页不会正常展示内容,而会返回链接不安全,是否继续。不安全的链接是否继续。 详情参考: C#动态调用webService出现基础连接已经关闭:未能为SSL/TLS安...

qq165285727的专栏 1531

XPATH注入漏洞检测工具汇总

环境 > Python3.7。

墨痕诉清风的博客 742

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

C#动态调用webService出现 基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系

/证书出现问题时调用此代码。//调用webservice前写上此方法即可。

Fighting515的博客 1331

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

调用Https WebService是报“基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系”的解决过程

今天在通过C#访问Webservice时遇到一个问题,首先通过对方提供的wsdl生成了调用代理类,在测试能否正常访问时,访问正式环境https://api.xxx.xx,一切正常,当访问测试环境是https://apitest.xxx.xxx,总是报“基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系”  InnerException信息为:根据验证过程,远程证书无效。 在网

cuboo的专栏 7521

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

调用Https WebService发布后使用时报“基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系”证书验证失败的解决过程(3)...

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34335458的博客 205

用httpWebRequest调用https开头的php webservice,报“基础连接已经关闭: 未能为SSL/TLS 安全通道建立信任关系”错误的解决方法...

在窗体的 InitializeComponent(); 之后,加一句 System.Net.ServicePointManager.ServerCertificateValidationCallback = delegate { return true; }; 让证书的Validation总是返回true 转载于:https://www...

weixin_30750335的博客 257

c# https请求忽略证书验证_c# 跳过 https 的webservice 中证书验证

抛异常内容如下:System.Net.WebException: 基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系。 ---> System.Security.Authentication.AuthenticationException: 根据验证过程,远程证书无效。解决方法:ServicePointManager.ServerCertificateValidationCal...

weixin_39965490的博客 2295

基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系

webservice接口调用时,抛出异常:“基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系“解决方案:接口调用前先设置证书回调、和安全协议。

qq_41674581的博客 8175
上一篇: web.config 加密解密--简洁版
下一篇: 通过SSL调用WebService
mounting
博客等级 码龄19年 4粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值