HttpClientHandler.DangerousAcceptAnyServerCertificateValidator Eigenschaft

Definition

Ruft einen zwischengespeicherten Delegaten ab, der immer true zurückgibt.

public:
 static property Func<System::Net::Http::HttpRequestMessage ^, System::Security::Cryptography::X509Certificates::X509Certificate2 ^, System::Security::Cryptography::X509Certificates::X509Chain ^, System::Net::Security::SslPolicyErrors, bool> ^ DangerousAcceptAnyServerCertificateValidator { Func<System::Net::Http::HttpRequestMessage ^, System::Security::Cryptography::X509Certificates::X509Certificate2 ^, System::Security::Cryptography::X509Certificates::X509Chain ^, System::Net::Security::SslPolicyErrors, bool> ^ get(); };
public static Func<System.Net.Http.HttpRequestMessage,System.Security.Cryptography.X509Certificates.X509Certificate2?,System.Security.Cryptography.X509Certificates.X509Chain?,System.Net.Security.SslPolicyErrors,bool> DangerousAcceptAnyServerCertificateValidator { get; }
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public static Func<System.Net.Http.HttpRequestMessage,System.Security.Cryptography.X509Certificates.X509Certificate2?,System.Security.Cryptography.X509Certificates.X509Chain?,System.Net.Security.SslPolicyErrors,bool> DangerousAcceptAnyServerCertificateValidator { get; }
public static Func<System.Net.Http.HttpRequestMessage,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Security.Cryptography.X509Certificates.X509Chain,System.Net.Security.SslPolicyErrors,bool> DangerousAcceptAnyServerCertificateValidator { get; }
static member DangerousAcceptAnyServerCertificateValidator : Func<System.Net.Http.HttpRequestMessage, System.Security.Cryptography.X509Certificates.X509Certificate2, System.Security.Cryptography.X509Certificates.X509Chain, System.Net.Security.SslPolicyErrors, bool>
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
static member DangerousAcceptAnyServerCertificateValidator : Func<System.Net.Http.HttpRequestMessage, System.Security.Cryptography.X509Certificates.X509Certificate2, System.Security.Cryptography.X509Certificates.X509Chain, System.Net.Security.SslPolicyErrors, bool>
Public Shared ReadOnly Property DangerousAcceptAnyServerCertificateValidator As Func(Of HttpRequestMessage, X509Certificate2, X509Chain, SslPolicyErrors, Boolean)

Eigenschaftswert

Ein zwischengespeicherter Delegat, der immer true zurückgibt.

Attribute

Hinweise

Insbesondere in Testszenarien wird ein gängiges Muster verwendet HttpClient , um eine Verbindung mit einem Server mit einem Zertifikat herzustellen, das nicht überprüft werden soll, z. B. ein selbstsigniertes Zertifikat. Dazu legen Sie die -Eigenschaft in der ServerCertificateCustomValidationCallback Regel HttpClientHandler auf einen Delegaten fest, der immer zurückgibtTrue. Dies bedeutet, dass das Zertifikat die Validierung bestanden hat. Dieser Rückruf wird jedoch nicht von allen Implementierungen unterstützt, und einige lösen aus PlatformNotSupportedException.

Die DangerousAcceptAnyServerCertificateValidator -Eigenschaft behandelt diese Einschränkung. Der von der DangerousAcceptAnyServerCertificateValidator -Eigenschaft zurückgegebene Delegat kann der ServerCertificateCustomValidationCallback -Eigenschaft zugewiesen werden, wie im folgenden Beispiel:

handler.ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator;

Dadurch erhalten HttpClientHandler Implementierungen eine bekannte Objektverweisidentität, die die Absicht des Entwicklers zum Ausdruck bringt. Wenn das in der ServerCertificateCustomValidationCallback -Eigenschaft gespeicherte DangerousAcceptAnyServerCertificateValidatorObjekt gleich ist, kann die Laufzeit die Überprüfung auf einer Plattform vollständig deaktivieren, die andernfalls eine PlatformNotSupportedExceptionauslösen würde.

Als Nebenvorteil können Entwickler diese Eigenschaft verwenden, um es Tools zu erleichtern, die Gefahr zu kennzeichnen, dass die Zertifikatvalidierung deaktiviert wird, was es Entwicklern erleichtert, unsichere Anwendungen zu vermeiden.

Gilt für: