WinHttpHandler.ServerCertificateValidationCallback Eigenschap

Definitie

Hiermee haalt u een callbackmethode op of stelt u deze in om het servercertificaat te valideren. Deze callback maakt deel uit van de SSL-handshake.

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)

Waarde van eigenschap

De callback moet worden geretourneerd true als het servercertificaat als geldig wordt beschouwd en de aanvraag moet worden verzonden. Anders retourneert false.

Voorbeelden

In het volgende codevoorbeeld wordt de callback geïmplementeerd. Als er validatiefouten zijn, retourneert false deze methode het voorkomen van communicatie met de niet-geverifieerde server. Anders is extra validatie mogelijk en wordt het certificaat geretourneerd true als het geldig is.

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;
};

Opmerkingen

De standaardwaarde is null. Als deze eigenschap is null, wordt het servercertificaat gevalideerd met behulp van standaard bekende certificeringsinstanties.

Het argument van sslPolicyErrors de gemachtigde bevat certificaatfouten die door SSPI worden geretourneerd tijdens het verifiëren van de server. De Boolean waarde die door deze gemachtigde wordt geretourneerd, bepaalt of de verificatie is toegestaan.

Van toepassing op