X509VerificationFlags Enumeración

Definición

Especifica las condiciones en las que se debe realizar la comprobación de certificados en la cadena X509.

Esta enumeración admite una combinación bit a bit de sus valores de miembro.

public enum class X509VerificationFlags
[System.Flags]
public enum X509VerificationFlags
[<System.Flags>]
type X509VerificationFlags = 
Public Enum X509VerificationFlags
Herencia
X509VerificationFlags
Atributos

Campos

Nombre Valor Description
NoFlag 0

No se incluyen marcas relativas a la comprobación.

IgnoreNotTimeValid 1

Omita los certificados de la cadena que no son válidos porque han expirado o aún no están en vigor al determinar la validez del certificado.

IgnoreCtlNotTimeValid 2

Ignore que la lista de confianza de certificados (CTL) no es válida, por motivos como el CTL ha expirado, al determinar la comprobación del certificado.

IgnoreNotTimeNested 4

Ignore que el certificado de ca (entidad de certificación) y el certificado emitido tienen períodos de validez que no están anidados al comprobar el certificado. Por ejemplo, el certificado de entidad de certificación puede ser válido desde el 1 de enero al 1 de diciembre y el certificado emitido del 2 de enero al 2 de diciembre, lo que significaría que los períodos de validez no están anidados.

IgnoreInvalidBasicConstraints 8

Omita que las restricciones básicas no son válidas al determinar la comprobación del certificado.

AllowUnknownCertificateAuthority 16

Ignore que la cadena no se puede comprobar debido a una entidad de certificación (CA) desconocida o a cadenas parciales.

IgnoreWrongUsage 32

Omita que el certificado no se emitió para el uso actual al determinar la comprobación del certificado.

IgnoreInvalidName 64

Ignore que el certificado tiene un nombre no válido al determinar la comprobación del certificado.

IgnoreInvalidPolicy 128

Ignore que el certificado tiene una directiva no válida al determinar la comprobación del certificado.

IgnoreEndRevocationUnknown 256

Omita que la revocación del certificado final (el certificado de usuario) es desconocida al determinar la comprobación del certificado.

IgnoreCtlSignerRevocationUnknown 512

Omita que la revocación del firmante de la lista de confianza de certificados (CTL) es desconocida al determinar la comprobación del certificado.

IgnoreCertificateAuthorityRevocationUnknown 1024

Omita que se desconoce la revocación de la entidad de certificación al determinar la comprobación del certificado.

IgnoreRootRevocationUnknown 2048

Omita que se desconoce la revocación raíz al determinar la comprobación del certificado.

AllFlags 4095

Se incluyen todas las marcas relativas a la comprobación.

Ejemplos

En el ejemplo siguiente se abre el almacén de certificados personal del usuario actual, se permite al usuario seleccionar un certificado y, a continuación, escribir información de la cadena de certificados y certificados en la consola. La salida depende del certificado que seleccione.

//Output chain information of the selected certificate.
X509Chain ch = new X509Chain();
ch.ChainPolicy.RevocationMode = X509RevocationMode.Online;
ch.Build (certificate);
Console.WriteLine ("Chain Information");
Console.WriteLine ("Chain revocation flag: {0}", ch.ChainPolicy.RevocationFlag);
Console.WriteLine ("Chain revocation mode: {0}", ch.ChainPolicy.RevocationMode);
Console.WriteLine ("Chain verification flag: {0}", ch.ChainPolicy.VerificationFlags);
Console.WriteLine ("Chain verification time: {0}", ch.ChainPolicy.VerificationTime);
Console.WriteLine ("Chain status length: {0}", ch.ChainStatus.Length);
Console.WriteLine ("Chain application policy count: {0}", ch.ChainPolicy.ApplicationPolicy.Count);
Console.WriteLine ("Chain certificate policy count: {0} {1}", ch.ChainPolicy.CertificatePolicy.Count, Environment.NewLine);
'Output chain information of the selected certificate.
Dim ch As New X509Chain()
ch.ChainPolicy.RevocationMode = X509RevocationMode.Online
ch.Build(certificate)
Console.WriteLine("Chain Information")
Console.WriteLine("Chain revocation flag: {0}", ch.ChainPolicy.RevocationFlag)
Console.WriteLine("Chain revocation mode: {0}", ch.ChainPolicy.RevocationMode)
Console.WriteLine("Chain verification flag: {0}", ch.ChainPolicy.VerificationFlags)
Console.WriteLine("Chain verification time: {0}", ch.ChainPolicy.VerificationTime)
Console.WriteLine("Chain status length: {0}", ch.ChainStatus.Length)
Console.WriteLine("Chain application policy count: {0}", ch.ChainPolicy.ApplicationPolicy.Count)
Console.WriteLine("Chain certificate policy count: {0} {1}", ch.ChainPolicy.CertificatePolicy.Count, Environment.NewLine)

Comentarios

Estas marcas indican las condiciones en las que debe producirse la comprobación en cadena. Por ejemplo, si una aplicación no requiere que los valores de hora de los certificados de una cadena sean válidos, se puede usar la marca IgnoreNotTimeValid.

Se aplica a