[C#]在.NET调用加了SSL验证的WebService-根据验证过程远程证书无效

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/david_520042/article/details/78592280

在.NET调用加了SSL验证的WebService
System.Net.WebException: 基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系。 —> System.Security.Authentication.AuthenticationException: 根据验证过程,远程证书无效。
你可以改进代码以询问用户证书无效。 不能恢复某些项目. 如下所示:

ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(ValidateServerCertificate);

并添加如下方法:

public static bool ValidateServerCertificate(object sender,X509Certificate certificate,X509Chain chain,SslPolicyErrors sslPolicyErrors)
{
 if (sslPolicyErrors == SslPolicyErrors.None)
 return true;
 else
 {
 if (System.Windows.Forms.MessageBox.Show("The server certificate is not valid.nAccept?","Certificate Validation", System.Windows.Forms.MessageBoxButtons.YesNo, System.Windows.Forms.MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
 return true;
 else
 return false;
 }
}
阅读更多

扫码向博主提问

厦门德仔

博客专家

非学,无以致疑;非问,无以广识
  • 擅长领域:
  • ERP
  • .NET
  • SQL
  • Ext.Net
  • DevExpress
去开通我的Chat快问

没有更多推荐了,返回首页