Ignorer la vérification du certificat SSL
Pour contourner la vérification du certificat SSL lors des requêtes HTTPS, vous pouvez utiliser un ServicePointManager.ServerCertificateValidationCallback
proxy. Ce proxy permet une logique de validation de certificat personnalisée, nous permettant d'ignorer les erreurs de validation.
Détails de l'agent
Le proxy ServicePointManager.ServerCertificateValidationCallback
est appelé chaque fois qu'une connexion HTTPS est établie avec un certificat non fiable ou expiré. Il accepte quatre paramètres :
obj
: une instance de ServicePoint
qui tente de vérifier le certificat. certificate
: Certificat X509 en cours de vérification. chain
: La chaîne de certificat X509 associée au certificat. errors
: Erreur de politique SSL associée à la tentative de vérification. Réussite
Pour ignorer la vérification du certificat, enregistrez un proxy qui renvoie toujours true
pour indiquer l'acceptation du certificat. Cela peut être fait dans la méthode GetRequest()
, comme indiqué dans l'extrait de code suivant :
<code class="language-csharp">ServicePointManager.ServerCertificateValidationCallback = delegate( Object obj, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors) { return (true); };</code>
Exécution et placement
Cette méthode proxy est appelée lorsque WebRequest
tente d'établir une connexion HTTPS et rencontre une erreur de confiance ou d'expiration. Il doit être enregistré avant d'exécuter la demande. Dans le code fourni, il est placé avant la ligne Stream stream = request.GetRequestStream()
.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!