Question

Nous avons un client avec des certificats SSL ne correspondent pas dans leur environnement d'assurance qualité. Nous faisons des appels HttpWebRequest à ces ressources Web SSL protégé à partir d'un rôle Web Azure. Pour contourner leurs certificats, nous avons mis ServicePointManager.CertificatePolicy à une nouvelle politique qui accepte tous les certificats. Cela fonctionne dans un environnement de confiance totale, mais échoue avec une exception SecurityPermission quand nous essayons de régler le certificatePolicy dans le moins-que-plein de confiance environnement Azure. Est-il possible que nous pouvons faire ces appels fonctionnent à partir de notre service Azure?

Était-ce utile?

La solution

Je vais répondre à ma question!

Apparemment, pour l'exécuter en toute confiance que vous avez simplement besoin enableNativeCodeExecution = « true » dans la configuration de rôle Web.

Autres conseils

Serait-ce quelque chose?

System.Net.ServicePointManager.ServerCertificateValidationCallback += delegate (
    object sender,
    X509Certificate cert,
    X509Chain chain,
    SslPolicyErrors sslPolicyErrors)
{
    if (sslPolicyErrors == SslPolicyErrors.None)
    {
        return true;   //Is valid
    }
    //Add the mismatched certificate hashstring below. 
    //That way only that resource will be affected and not all certificates will be trusted.
    if (cert.GetCertHashString() == "99E92D8447AEF30483B1D7527812C9B7B3A915A7")
    {
        return true;
    }

    return false;
};
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top