Compartir a través de


X509CertificateValidator Clase

Definición

Valida un certificado X.509.

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
Herencia
X509CertificateValidator
Derivado
Implementaciones

Ejemplos

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

Comentarios

Use la X509CertificateValidator clase para especificar cómo se considera válido un certificado X.509. Esto se puede hacer derivando una clase de X509CertificateValidator e invalidando el Validate método .

Constructores

Nombre Description
X509CertificateValidator()

Inicializa una nueva instancia de la clase X509CertificateValidator.

Propiedades

Nombre Description
ChainTrust

Obtiene un validador que valida el certificado X.509 mediante una cadena de confianza.

None

Obtiene un validador que no realiza ninguna validación en un certificado X.509. Como resultado, siempre se considera que un certificado X.509 es válido.

PeerOrChainTrust

Obtiene un validador que comprueba que el certificado está en el TrustedPeople almacén de certificados o mediante la creación de una cadena de confianza de certificados. El certificado es de confianza si pasa cualquiera de los métodos de comprobación.

PeerTrust

Obtiene un validador que comprueba que el certificado está en el almacén de TrustedPeople certificados.

Métodos

Nombre Description
CreateChainTrustValidator(Boolean, X509ChainPolicy)

Obtiene un validador que comprueba el certificado X.509 especificando el contexto y la directiva de cadena que se usa para compilar y comprobar una cadena de confianza.

CreatePeerOrChainTrustValidator(Boolean, X509ChainPolicy)

Obtiene un validador que comprueba que el certificado está en el TrustedPeople almacén de certificados o especificando el contexto y la directiva de cadena que se usa para crear una cadena de confianza de certificados. El certificado es de confianza si pasa cualquiera de los métodos de comprobación.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetHashCode()

Sirve como función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
LoadCustomConfiguration(XmlNodeList)

Cuando se invalida en una clase derivada, carga la configuración personalizada desde XML.

MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
Validate(X509Certificate2)

Cuando se invalida en una clase derivada, valida el certificado X.509.

Se aplica a