Heim >Backend-Entwicklung >C++ >Wie kann ich nicht vertrauenswürdige SSL-Zertifikate ignorieren, wenn ich HttpClient in .NET Standard verwende?

Wie kann ich nicht vertrauenswürdige SSL-Zertifikate ignorieren, wenn ich HttpClient in .NET Standard verwende?

Susan Sarandon
Susan SarandonOriginal
2025-01-14 15:37:47472Durchsuche

How Can I Ignore Untrusted SSL Certificates When Using HttpClient in .NET Standard?

Umgehen der SSL-Zertifikatsvalidierung in .NET Standard mit HttpClient

Problem:

Das Verbinden einer Windows 8-Anwendung mit einer Test-Web-API schlägt aufgrund nicht vertrauenswürdiger SSL-Zertifikate fehl. Das Ziel besteht darin, eine Problemumgehung zu finden, die der ServerCertificateValidationCallback-Methode ähnelt, die mit WebRequest.

verwendet wird

Lösung:

So umgehen Sie die SSL-Zertifikatsvalidierung mit HttpClient in .NET Standard und bieten eine ähnliche Funktionalität wie die WebRequest-Methode:

  1. Instanziieren HttpClientHandler:

    <code class="language-csharp">var handler = new HttpClientHandler();</code>
  2. Setzen Sie ClientCertificateOptions:

    <code class="language-csharp">handler.ClientCertificateOptions = ClientCertificateOption.Manual;</code>
  3. Benutzerdefinierte Zertifikatsvalidierung implementieren: Ein Lambda-Ausdruck, der immer true zurückgibt, deaktiviert die Zertifikatsvalidierung:

    <code class="language-csharp">handler.ServerCertificateCustomValidationCallback = (_, __, ___, ____) => true;</code>
  4. Erstellen Sie HttpClient: Verwenden Sie den geänderten Handler, um die HttpClient-Instanz zu erstellen:

    <code class="language-csharp">var client = new HttpClient(handler);</code>

Diese Methode ermöglicht die Verbindung zur Test-API durch Ignorieren der Zertifikatsvalidierung. Es ist jedoch wichtig zu verstehen, dass dies die Sicherheit erheblich verringert und Ihre Anwendung anfällig für Man-in-the-Middle-Angriffe macht. Verwenden Sie dies nur in kontrollierten Testumgebungen und niemals in der Produktion.

Das obige ist der detaillierte Inhalt vonWie kann ich nicht vertrauenswürdige SSL-Zertifikate ignorieren, wenn ich HttpClient in .NET Standard verwende?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn