X509VerificationFlags Enumerazione

Definizione

Specifica le condizioni in base alle quali deve essere eseguita la verifica dei certificati nella catena X509.

Questa enumerazione supporta una combinazione bit per bit dei rispettivi valori dei membri.

public enum class X509VerificationFlags
[System.Flags]
public enum X509VerificationFlags
[<System.Flags>]
type X509VerificationFlags = 
Public Enum X509VerificationFlags
Ereditarietà
X509VerificationFlags
Attributi

Campi

Nome Valore Descrizione
NoFlag 0

Non sono inclusi flag relativi alla verifica.

IgnoreNotTimeValid 1

Ignorare i certificati nella catena che non sono validi perché sono scaduti o non sono ancora in vigore quando si determina la validità del certificato.

IgnoreCtlNotTimeValid 2

Ignorare che l'elenco di certificati attendibili (CTL) non è valido, per motivi quali il CTL è scaduto, quando si determina la verifica del certificato.

IgnoreNotTimeNested 4

Ignorare che il certificato ca (autorità di certificazione) e il certificato emesso abbiano periodi di validità che non sono annidati durante la verifica del certificato. Ad esempio, il certificato ca può essere valido dal 1° gennaio al 1° dicembre e il certificato emesso dal 2 gennaio al 2 dicembre, il che significa che i periodi di validità non sono annidati.

IgnoreInvalidBasicConstraints 8

Ignorare che i vincoli di base non sono validi quando si determina la verifica del certificato.

AllowUnknownCertificateAuthority 16

Ignorare che la catena non può essere verificata a causa di un'autorità di certificazione (CA) sconosciuta o di catene parziali.

IgnoreWrongUsage 32

Ignorare che il certificato non è stato emesso per l'uso corrente durante la determinazione della verifica del certificato.

IgnoreInvalidName 64

Ignorare che il certificato ha un nome non valido durante la determinazione della verifica del certificato.

IgnoreInvalidPolicy 128

Ignorare che il certificato abbia criteri non validi per determinare la verifica del certificato.

IgnoreEndRevocationUnknown 256

Ignorare che la revoca del certificato finale (certificato utente) è sconosciuta durante la determinazione della verifica del certificato.

IgnoreCtlSignerRevocationUnknown 512

Ignorare che la revoca del firmatario CTL (Certificate Trust List) è sconosciuta durante la determinazione della verifica del certificato.

IgnoreCertificateAuthorityRevocationUnknown 1024

Ignorare che la revoca dell'autorità di certificazione è sconosciuta durante la determinazione della verifica del certificato.

IgnoreRootRevocationUnknown 2048

Ignorare che la revoca radice è sconosciuta durante la determinazione della verifica del certificato.

AllFlags 4095

Sono inclusi tutti i flag relativi alla verifica.

Esempio

L'esempio seguente apre l'archivio certificati personali dell'utente corrente, consente all'utente di selezionare un certificato, quindi scrive le informazioni sul certificato e sulla catena di certificati nella console. L'output dipende dal certificato selezionato.

//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)

Commenti

Questi flag indicano le condizioni in cui deve verificarsi la verifica della catena. Ad esempio, se un'applicazione non richiede che i valori temporali dei certificati in una catena siano validi, è possibile usare il flag IgnoreNotTimeValid.

Si applica a