ServerCertificateValidationCallback被忽略

时间:2012-10-14 03:57:20

标签: c# .net ssl

我有以下代码,导致WebException,我无法弄清楚为什么我的生活。 Windows 8 RTM上的VS2012 / .Net 4.5 RTM。

    ServicePointManager.CertificatePolicy = null;
    ServicePointManager.CheckCertificateRevocationList = false;
    ServicePointManager.ServerCertificateValidationCallback = delegate { return true; };

    var request = WebRequest.Create(url) as HttpWebRequest;
    request.ServerCertificateValidationCallback = delegate { return true; };

    var response = request.GetResponse();

    WebException was unhandled
    The request was aborted: Could not create SSL/TLS secure channel.

我最初将回调作为自己的方法,从未调用过。有什么想法我无法忽略SSL验证错误并将我的所有敏感数据发送到未知的Web服务器?

1 个答案:

答案 0 :(得分:1)

微软不会允许它。它破坏了平台,因为这是我们不为它开发应用程序的原因。 (我们有数以百万计的客户)

http://social.msdn.microsoft.com/Forums/windowsapps/en-US/f5821194-4c40-48e7-976c-3dec8864ac59/servicepointmanagerservercertificatevalidationcallback?forum=winappswithcsharp

您需要有效的证书或真正的解决方法。出于安全原因,这是一个很大的缺点。