Sdílet prostřednictvím


HttpClientHandler.DangerousAcceptAnyServerCertificateValidator Vlastnost

Definice

Získá delegát v mezipaměti, který vždy vrátí 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)

Hodnota vlastnosti

Delegát uložený v mezipaměti, který vždy vrací true.

Atributy

Poznámky

Zejména v testovacích scénářích se běžný vzor používá HttpClient pro připojení k serveru pomocí certifikátu, který by neměl být ověřen, například certifikát podepsaný svým držitelem. Obvykle to HttpClientHandler uděláte tak, že vlastnost nastavíte ServerCertificateCustomValidationCallback na delegáta, který se vždy vrátí True. To znamená, že certifikát předal ověření. Nicméně, ne všechny implementace podporují toto zpětné volání a některé vyvolat PlatformNotSupportedException.

Tato DangerousAcceptAnyServerCertificateValidator vlastnost toto omezení řeší. Delegát vrácený DangerousAcceptAnyServerCertificateValidator vlastností může být přiřazen k ServerCertificateCustomValidationCallback vlastnosti, jak je znázorněno v následujícím příkladu:

handler.ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator;

To dává HttpClientHandler implementaci známou referenční identitu objektu, která vyjadřuje záměr vývojáře. Pokud je objekt uložený ve ServerCertificateCustomValidationCallback vlastnosti odkaz roven DangerousAcceptAnyServerCertificateValidator, modul runtime je schopen zcela zakázat ověřování na platformě, která by jinak vyvolat PlatformNotSupportedException.

Jako vedlejší výhoda můžou vývojáři tuto vlastnost použít, aby nástroje snadněji označily nebezpečí zakázání ověřování certifikátů, což vývojářům usnadňuje přesouvání nezabezpečených aplikací.

Platí pro