WinHttpHandler.ServerCertificateValidationCallback Vlastnost

Definice

Získá nebo nastaví metodu zpětného volání k ověření certifikátu serveru. Toto zpětné volání je součástí metody handshake PROTOKOLU SSL.

public:
 property Func<System::Net::Http::HttpRequestMessage ^, System::Security::Cryptography::X509Certificates::X509Certificate2 ^, System::Security::Cryptography::X509Certificates::X509Chain ^, System::Net::Security::SslPolicyErrors, bool> ^ ServerCertificateValidationCallback { Func<System::Net::Http::HttpRequestMessage ^, System::Security::Cryptography::X509Certificates::X509Certificate2 ^, System::Security::Cryptography::X509Certificates::X509Chain ^, System::Net::Security::SslPolicyErrors, bool> ^ get(); void set(Func<System::Net::Http::HttpRequestMessage ^, System::Security::Cryptography::X509Certificates::X509Certificate2 ^, System::Security::Cryptography::X509Certificates::X509Chain ^, System::Net::Security::SslPolicyErrors, bool> ^ value); };
public Func<System.Net.Http.HttpRequestMessage,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Security.Cryptography.X509Certificates.X509Chain,System.Net.Security.SslPolicyErrors,bool>? ServerCertificateValidationCallback { get; set; }
public Func<System.Net.Http.HttpRequestMessage,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Security.Cryptography.X509Certificates.X509Chain,System.Net.Security.SslPolicyErrors,bool> ServerCertificateValidationCallback { get; set; }
member this.ServerCertificateValidationCallback : Func<System.Net.Http.HttpRequestMessage, System.Security.Cryptography.X509Certificates.X509Certificate2, System.Security.Cryptography.X509Certificates.X509Chain, System.Net.Security.SslPolicyErrors, bool> with get, set
Public Property ServerCertificateValidationCallback As Func(Of HttpRequestMessage, X509Certificate2, X509Chain, SslPolicyErrors, Boolean)

Hodnota vlastnosti

Zpětné volání by se mělo vrátit true , pokud je certifikát serveru považován za platný a požadavek by se měl odeslat. V opačném případě vrátí hodnotu false.

Příklady

Následující příklad kódu implementuje zpětné volání. Pokud dojde k chybám ověření, tato metoda vrátí false zabránění komunikaci s neověřeným serverem. V opačném případě umožňuje další ověření a vrátit true se, pokud je certifikát platný.

var handler = new WinHttpHandler();
handler.ServerCertificateValidationCallback = (httpRequestMessage, certificate, chain, sslPolicyErrors) =>
{
    if (sslPolicyErrors == SslPolicyErrors.None)
    {
        // TODO: Implement additional custom certificate validation logic here.
        return true;
    }
    // Do not allow this client to communicate with unauthenticated servers.
    return false;
};

Poznámky

Výchozí hodnota je null. Pokud je nulltato vlastnost, certifikát serveru se ověří pomocí standardních známých certifikačních autorit.

Argument delegáta sslPolicyErrors obsahuje všechny chyby certifikátu vrácené SSPI při ověřování serveru. Hodnota Boolean vrácená tímto delegátem určuje, zda je povoleno úspěšné ověření.

Platí pro