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 erachtet wird. Dies kann durch Ableiten einer Klasse von X509CertificateValidator und Überschreiben der Validate-Methode erfolgen.

Konstruktoren

X509CertificateValidator()

Initialisiert eine neue Instanz der X509CertificateValidator-Klasse.

Eigenschaften

ChainTrust

Ruft ein Validierungssteuerelement ab, das das X.509-Zertifikat mit einer Vertrauenskette überprüft.

None

Ruft ein Validierungssteuerelement ab, das keine Validierung für ein X.509-Zertifikat ausführt. Entsprechend wird ein X.509-Zertifikat immer als gültig betrachtet.

PeerOrChainTrust

Ruft ein Validierungssteuerelement ab, das überprüft, ob sich das Zertifikat im TrustedPeople-Zertifikatspeicher befindet, oder das die Validierung durch Erstellen einer Vertrauenskette vornimmt. Das Zertifikat wird als vertrauenswürdig eingestuft, wenn eine der beiden Überprüfungsmethoden erfolgreich ist.

PeerTrust

Ruft ein Validierungssteuerelement ab, das überprüft, ob sich das Zertifikat im TrustedPeople-Zertifikatspeicher befindet.

Methoden

CreateChainTrustValidator(Boolean, X509ChainPolicy)

Ruft ein Validierungssteuerelement ab, das das X.509-Zertifikat durch Angabe der Kontext- und Kettenrichtlinie überprüft, die zum Erstellen und zur Überprüfung der Vertrauenskette verwendet wird.

CreatePeerOrChainTrustValidator(Boolean, X509ChainPolicy)

Ruft ein Validierungssteuerelement ab, das überprüft, ob sich das Zertifikat im TrustedPeople-Zertifikatspeicher befindet, oder das die Überprüfung durch Angabe der Kontext- und Kettenrichtlinie vornimmt, die zum Erstellen einer Zertifikatsvertrauenskette verwendet wird. Das Zertifikat wird als vertrauenswürdig eingestuft, wenn eine der beiden Überprüfungsmethoden erfolgreich ist.

Equals(Object)

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

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
LoadCustomConfiguration(XmlNodeList)

Lädt beim Überschreiben in einer abgeleiteten Klasse die benutzerdefinierte Konfiguration aus XML ab.

MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

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

(Geerbt von Object)
Validate(X509Certificate2)

Überprüft das X.509-Zertifikat, wenn in einer abgeleiteten Klasse überschrieben.

Gilt für: