C# 基礎鏈接已經關閉: 未能爲 SSL/TLS 安全通道創建信任關係。

今天寫程序的時候調用到一個第三方的DLL文件,本機調試一切都正常,可是程序不是到服務器之後一直提示一個BUG:"基礎鏈接已經關閉: 未能爲SSL/TLS 安全通道創建信任關係"。
後來把DLL文件進行反編譯,發現是在得到請求的時候出錯了。 安全

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

定義一個類,來對遠程X.509證書的驗證,進行處理,返回爲true.咱們要本身定義一個類,而後在客戶單調用WCF服務以前,執行一次便可。代碼以下:服務器

 

 public static class Util
    {
        /// <summary>
        /// Sets the cert policy.
        /// </summary>
        public static void SetCertificatePolicy()
        {
            ServicePointManager.ServerCertificateValidationCallback += RemoteCertificateValidate;
        }

        /// <summary>
        /// Remotes the certificate validate.
        /// </summary>
        private static bool RemoteCertificateValidate(
           object sender, X509Certificate cert,
            X509Chain chain, SslPolicyErrors error)
        {
            // trust any certificate!!!
            System.Console.WriteLine("Warning, trust any certificate");
            return true;
        }
    }

在WebRequest.Create("https://……").GetResponse();調用操做點前先調用這個方法: Util.SetCertificatePolicy();spa

相關文章
相關標籤/搜索