無法為 SSL/TLS 安全通道建立信任關係,忽略憑証檢查的方式

转自:http://www.dotblogs.com.tw/rainmaker/archive/2010/11/30/19803.aspx

前言

在ASP.NET 2.0 WEB AP中去Call Https的Web Service時,如果會發生「WebException: 基礎連接已關閉: 無法為 SSL/TLS 安全通道建立信任關係。」,問了客戶IT後發現可以忽略憑証的檢查!

實作

用以上的Key Word到網路上找,可以找到一堆的解法! 可以寫在Page或是寫在Global.asax之中! 我選了個最Easy的方式,直接寫在Global.asax之中的Application_Start事件中寫入以下的Code,就可以了!

	void Application_Start(object sender, EventArgs e) 
{
    System.Net.ServicePointManager.ServerCertificateValidationCallback =
new System.Net.Security.RemoteCertificateValidationCallback(
    delegate(object MySender,
        System.Security.Cryptography.X509Certificates.X509Certificate MyCertificate,
        System.Security.Cryptography.X509Certificates.X509Chain MyChain,
        System.Net.Security.SslPolicyErrors MyErrors)
    {
        if (MySender is System.Net.WebRequest)
        {
            //忽略憑証檢查,一律回傳true
          return true;
        }
        return false;
    });
}
以上範例為網路上Copy來,並加以改寫的哦!
原文地址:https://www.cnblogs.com/futao/p/2892755.html