Travailler avec des certificats non fiables dans .NET HttpClient
L'utilisation de HttpClient
et HttpClientHandler
pour accéder aux API HTTPS peut présenter des défis lorsqu'il s'agit de certificats auto-signés ou non fiables. Contrairement à WebRequest
, HttpClient
ne prend pas directement en charge le contournement de la validation des certificats de manière simple.
Cette solution explique comment gérer les certificats non fiables dans un environnement .NET Standard :
<code class="language-csharp">var handler = new HttpClientHandler();</code>
<code class="language-csharp">handler.ClientCertificateOptions = ClientCertificateOption.Manual;</code>
<code class="language-csharp">handler.ServerCertificateCustomValidationCallback = (httpRequestMessage, cert, certChain, policyErrors) => { return true; // Accepts all certificates - use with caution! };</code>
<code class="language-csharp">var client = new HttpClient(handler);</code>
Considérations de sécurité importantes :
Cette méthode désactive la validation du certificat. Bien qu'utile pour le développement ou les tests, ne l'utilisez jamais dans un environnement de production. Le contournement de la validation du certificat expose votre application à des risques de sécurité importants, notamment des attaques de l'homme du milieu. Donnez toujours la priorité à l'utilisation de certificats de confiance pour les applications de production afin de maintenir la sécurité et l'intégrité des données.
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!