HttpListenerRequest.ClientCertificateError 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 Fehlercode ab, der ein Problem mit dem vom Client bereitgestellten X509Certificate bezeichnet.
public:
property int ClientCertificateError { int get(); };
public int ClientCertificateError { get; }
member this.ClientCertificateError : int
Public ReadOnly Property ClientCertificateError As Integer
Eigenschaftswert
Ein Int32-Wert, der einen Windows-Fehlercode enthält.
Ausnahmen
Das Clientzertifikat wurde noch nicht von einem Aufruf der BeginGetClientCertificate(AsyncCallback, Object)-Methode oder GetClientCertificate()-Methode initialisiert
- oder -
Der Vorgang wird immer noch ausgeführt.
Beispiele
Im folgenden Codebeispiel wird diese Eigenschaft überprüft, um zu ermitteln, ob die Anforderung ein gültiges Clientzertifikat enthält.
Console.WriteLine("Listening for {0} prefixes...", listener.Prefixes.Count);
HttpListenerContext context = listener.GetContext();
HttpListenerRequest request = context.Request;
Console.WriteLine("Received a request.");
// This server requires a valid client certificate
// for requests that are not sent from the local computer.
// Did the client omit the certificate or send an invalid certificate?
if (request.IsAuthenticated &&
request.GetClientCertificate() == null ||
request.ClientCertificateError != 0)
{
// Send a 403 response.
HttpListenerResponse badCertificateResponse = context.Response ;
SendBadCertificateResponse(badCertificateResponse);
Console.WriteLine("Client has invalid certificate.");
continue;
}
Console.WriteLine("Listening for {0} prefixes...", listener.Prefixes.Count)
Dim context As HttpListenerContext = listener.GetContext()
Dim request As HttpListenerRequest = context.Request
Console.WriteLine("Received a request.")
' This server requires a valid client certificate
' for requests that are not sent from the local computer.
' Did the client omit the certificate or send an invalid certificate?
If request.IsAuthenticated AndAlso request.GetClientCertificate() Is Nothing OrElse request.ClientCertificateError <> 0 Then
' Send a 403 response.
Dim badCertificateResponse As HttpListenerResponse = context.Response
SendBadCertificateResponse(badCertificateResponse)
Console.WriteLine("Client has invalid certificate.")
Continue Do
End If
Hinweise
Diese Eigenschaft enthält einen Windows-Fehlercode, der von der Security Support Provider Interface (SSPI) von Secure Channel (Schannel) zurückgegeben wird, der zum Überprüfen des Zertifikats verwendet wird. Weitere Informationen zur SSPI-Unterstützung für Schannel finden Sie unter Erstellen einer sicheren Verbindung mit Schannel.