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 sollte, z. B. ein selbstsigniertes Zertifikat. Sie tun dies in der Regel, HttpClientHandler indem Sie die Eigenschaft auf einen Delegaten festlegen, der ServerCertificateCustomValidationCallback immer zurückgibt True. Dies gibt an, dass das Zertifikat die Überprüfung bestanden hat. Allerdings unterstützen nicht alle Implementierungen diesen Rückruf, und einige lösen aus PlatformNotSupportedException.

Mit DangerousAcceptAnyServerCertificateValidator der -Eigenschaft wird diese Einschränkung behoben. 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 ein PlatformNotSupportedExceptionauslöst.

Als Nebenvorteil können Entwickler diese Eigenschaft verwenden, um es Tools zu erleichtern, die Gefahr der Deaktivierung der Zertifikatüberprüfung zu kennzeichnen, was es Entwicklern erleichtert, den Versand unsicherer Anwendungen zu vermeiden.

Gilt für: