HttpClientHandler.DangerousAcceptAnyServerCertificateValidator Właściwość

Definicja

Pobiera buforowany delegat, który zawsze zwraca truewartość .

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)

Wartość właściwości

Buforowany delegat, który zawsze zwraca wartość true.

Atrybuty

Uwagi

Szczególnie w scenariuszach testowych typowy wzorzec służy HttpClient do nawiązywania połączenia z serwerem z certyfikatem, który nie powinien być weryfikowany, na przykład certyfikat z podpisem własnym. Zazwyczaj można to HttpClientHandler zrobić, ustawiając ServerCertificateCustomValidationCallback właściwość na delegata, który zawsze zwraca Truewartość ; oznacza to, że certyfikat przeszedł walidację. Jednak nie wszystkie implementacje obsługują to wywołanie zwrotne, a niektóre zgłaszają wyjątek PlatformNotSupportedException.

Właściwość DangerousAcceptAnyServerCertificateValidator odnosi się do tego ograniczenia. Delegat zwrócony przez DangerousAcceptAnyServerCertificateValidator właściwość można przypisać do ServerCertificateCustomValidationCallback właściwości, jak w poniższym przykładzie:

handler.ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator;

HttpClientHandler Zapewnia to implementację znanej tożsamości odwołania do obiektu, która wyraża intencję dewelopera. Jeśli obiekt przechowywany we ServerCertificateCustomValidationCallback właściwości jest odwołaniem równym DangerousAcceptAnyServerCertificateValidator, środowisko uruchomieniowe może całkowicie wyłączyć walidację na platformie, która w przeciwnym razie zgłosi błąd PlatformNotSupportedException.

Jako korzyść po stronie deweloperzy mogą używać tej właściwości, aby ułatwić narzędziom flagowanie niebezpieczeństwa wyłączenia weryfikacji certyfikatu, co ułatwia deweloperom unikanie wysyłania niezabezpieczonych aplikacji.

Dotyczy