Freigeben über


X509CertificateValidator Klasse

Definition

Überprüft ein X.509-Zertifikat.

public ref class X509CertificateValidator abstract
public ref class X509CertificateValidator abstract : System::IdentityModel::Configuration::ICustomIdentityConfiguration
public abstract class X509CertificateValidator
public abstract class X509CertificateValidator : System.IdentityModel.Configuration.ICustomIdentityConfiguration
type X509CertificateValidator = class
type X509CertificateValidator = class
    interface ICustomIdentityConfiguration
Public MustInherit Class X509CertificateValidator
Public MustInherit Class X509CertificateValidator
Implements ICustomIdentityConfiguration
Vererbung
X509CertificateValidator
Abgeleitet
Implementiert

Beispiele

public class MyX509CertificateValidator : X509CertificateValidator
{
    string allowedIssuerName;
    public MyX509CertificateValidator(string allowedIssuerName)
    {
        if (allowedIssuerName == null)
        {
            throw new ArgumentNullException("allowedIssuerName");
        }

        this.allowedIssuerName = allowedIssuerName;
    }
    public override void Validate(X509Certificate2 certificate)
    {
        // Check that there is a certificate.
        if (certificate == null)
        {
            throw new ArgumentNullException("certificate");
        }

        // Check that the certificate issuer matches the configured issuer
        if (allowedIssuerName != certificate.IssuerName.Name)
        {
            throw new SecurityTokenValidationException
              ("Certificate was not issued by a trusted issuer");
        }
    }
}

Public Class MyX509CertificateValidator
    Inherits X509CertificateValidator
    Private allowedIssuerName As String

    Public Sub New(ByVal allowedIssuerName As String)
        If allowedIssuerName Is Nothing Then
            Throw New ArgumentNullException("allowedIssuerName")
        End If

        Me.allowedIssuerName = allowedIssuerName

    End Sub

    Public Overrides Sub Validate(ByVal certificate As X509Certificate2)
        ' Check that there is a certificate.
        If certificate Is Nothing Then
            Throw New ArgumentNullException("certificate")
        End If

        ' Check that the certificate issuer matches the configured issuer
        If allowedIssuerName <> certificate.IssuerName.Name Then
            Throw New SecurityTokenValidationException("Certificate was not issued by a trusted issuer")
        End If

    End Sub
End Class

Hinweise

Verwenden Sie die X509CertificateValidator Klasse, um anzugeben, wie ein X.509-Zertifikat als gültig eingestuft wird. Dies kann durch Ableiten einer Klasse von X509CertificateValidator der Methode und überschrieben Validate werden.

Konstruktoren

Name Beschreibung
X509CertificateValidator()

Initialisiert eine neue Instanz der X509CertificateValidator-Klasse.

Eigenschaften

Name Beschreibung
ChainTrust

Ruft einen Validator ab, der das X.509-Zertifikat mithilfe einer Vertrauenskette überprüft.

None

Ruft einen Validator ab, der keine Überprüfung für ein X.509-Zertifikat durchführt. Daher gilt ein X.509-Zertifikat immer als gültig.

PeerOrChainTrust

Ruft einen Validator ab, der bestätigt, dass sich das Zertifikat im TrustedPeople Zertifikatspeicher befindet oder durch Erstellen einer Zertifikatvertrauenskette. Das Zertifikat ist vertrauenswürdig, wenn es eine der Überprüfungsmethoden übergibt.

PeerTrust

Ruft einen Validator ab, der überprüft, ob sich das Zertifikat im TrustedPeople Zertifikatspeicher befindet.

Methoden

Name Beschreibung
CreateChainTrustValidator(Boolean, X509ChainPolicy)

Ruft einen Validator ab, der das X.509-Zertifikat überprüft, indem die Kontext- und Kettenrichtlinie angegeben wird, die zum Erstellen und Überprüfen einer Vertrauenskette verwendet wird.

CreatePeerOrChainTrustValidator(Boolean, X509ChainPolicy)

Ruft einen Validator ab, der bestätigt, dass sich das Zertifikat im TrustedPeople Zertifikatspeicher befindet oder durch Angeben der Kontext- und Kettenrichtlinie, die zum Erstellen einer Zertifikatvertrauenskette verwendet wird. Das Zertifikat ist vertrauenswürdig, wenn es eine der Überprüfungsmethoden übergibt.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Dient als die Standard-Hashfunktion

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
LoadCustomConfiguration(XmlNodeList)

Wenn sie in einer abgeleiteten Klasse außer Kraft gesetzt wird, wird die benutzerdefinierte Konfiguration aus XML geladen.

MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
Validate(X509Certificate2)

Wenn sie in einer abgeleiteten Klasse außer Kraft gesetzt wird, wird das X.509-Zertifikat überprüft.

Gilt für: