HttpClientHandler.DangerousAcceptAnyServerCertificateValidator Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft einen zwischengespeicherten Delegaten ab, der immer zurückgegeben wird true.
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(); };
[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; }
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")>]
static member DangerousAcceptAnyServerCertificateValidator : Func<System.Net.Http.HttpRequestMessage, System.Security.Cryptography.X509Certificates.X509Certificate2, System.Security.Cryptography.X509Certificates.X509Chain, System.Net.Security.SslPolicyErrors, bool>
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
Eine zwischengespeicherte Stellvertretung, die immer zurückgegeben wird true.
- Attribute
Hinweise
Insbesondere in Testszenarien wird HttpClient ein gängiges Muster verwendet, um eine Verbindung mit einem Server mit einem Zertifikat herzustellen, das nicht überprüft werden sollte, z. B. ein selbstsigniertes Zertifikat. Sie tun dies häufig, HttpClientHandler indem Sie die Eigenschaft auf einen Delegaten festlegen, der ServerCertificateCustomValidationCallback immer zurückgegeben Truewird. Dies gibt an, dass das Zertifikat die Überprüfung bestanden hat. Allerdings unterstützen nicht alle Implementierungen diesen Rückruf und einige Auslösen PlatformNotSupportedException.
Die DangerousAcceptAnyServerCertificateValidator Eigenschaft behebt 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 wird HttpClientHandler eine bekannte Objektverweisidentität bereitgestellt, die die Absicht des Entwicklers ausdrückt. Wenn das in der ServerCertificateCustomValidationCallback Eigenschaft gespeicherte DangerousAcceptAnyServerCertificateValidatorObjekt gleich dem Verweis ist, kann die Laufzeit die Überprüfung auf einer Plattform vollständig deaktivieren, die andernfalls eine PlatformNotSupportedException.
Als Nebenvorteil können Entwickler diese Eigenschaft verwenden, um Tools zu vereinfachen, um die Gefahr der Deaktivierung der Zertifikatüberprüfung zu kennzeichnen, was Entwicklern das Vermeiden des Versands unsicherer Anwendungen erleichtert.