Saltar al contenido

Cómo ignorar la verificación del certificado cuando ssl

Solución:

Para cualquier persona interesada en aplicar esta solución por solicitud, esta es una opción y utiliza una expresión Lambda. La misma expresión Lambda también se puede aplicar al filtro global mencionado por blak3r. Este método parece requerir .NET 4.5.

String url = "https://www.stackoverflow.com";
HttpWebRequest request = HttpWebRequest.CreateHttp(url);
request.ServerCertificateValidationCallback += (sender, certificate, chain, sslPolicyErrors) => true;

En .NET 4.0, la expresión Lambda se puede aplicar al filtro global como tal

ServicePointManager.ServerCertificateValidationCallback += (sender, certificate, chain, sslPolicyErrors) => true;

Dado que solo hay un ServicePointManager global, la configuración de ServicePointManager.ServerCertificateValidationCallback dará como resultado que todas las solicitudes posteriores heredarán esta política. Dado que es una “configuración” global, sería preferible establecerla en el método Application_Start en Global.asax.

La configuración de la devolución de llamada anula el comportamiento predeterminado y usted mismo puede crear una rutina de validación personalizada.

Esto funcionó para mí:

System.Net.ServicePointManager.ServerCertificateValidationCallback +=
delegate(object sender, System.Security.Cryptography.X509Certificates.X509Certificate certificate,
                        System.Security.Cryptography.X509Certificates.X509Chain chain,
                        System.Net.Security.SslPolicyErrors sslPolicyErrors)
    {
        return true; // **** Always accept
    };

Fragmento de aquí: http://www.west-wind.com/weblog/posts/2011/Feb/11/HttpWebRequest-and-Ignoring-SSL-Certificate-Errors

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *