Język

X509VerificationFlags Wyliczenie

Definicja

Określa warunki, w których należy przeprowadzić weryfikację certyfikatów w łańcuchu X509.

To wyliczenie obsługuje bitową kombinację jego wartości składowych.

public enum class X509VerificationFlags
[System.Flags]
public enum X509VerificationFlags
[<System.Flags>]
type X509VerificationFlags = 
Public Enum X509VerificationFlags
Dziedziczenie
X509VerificationFlags
Atrybuty

Pola

Nazwa Wartość Opis
NoFlag 0

Nie uwzględniono flag odnoszących się do weryfikacji.

IgnoreNotTimeValid 1

Ignoruj certyfikaty w łańcuchu, które nie są prawidłowe, ponieważ wygasły lub nie obowiązują jeszcze podczas określania ważności certyfikatu.

IgnoreCtlNotTimeValid 2

Ignoruj, że lista zaufania certyfikatów (CTL) jest nieprawidłowa, ze względu na to, że lista CTL wygasła podczas określania weryfikacji certyfikatu.

IgnoreNotTimeNested 4

Ignoruj, że certyfikat urzędu certyfikacji i wystawiony certyfikat mają okresy ważności, które nie są zagnieżdżone podczas weryfikowania certyfikatu. Na przykład certyfikat urzędu certyfikacji może być ważny od 1 stycznia do 1 grudnia i wystawiony certyfikat od 2 stycznia do 2 grudnia, co oznaczałoby, że okresy ważności nie są zagnieżdżone.

IgnoreInvalidBasicConstraints 8

Ignoruj, że podstawowe ograniczenia są nieprawidłowe podczas określania weryfikacji certyfikatu.

AllowUnknownCertificateAuthority 16

Ignoruj, że nie można zweryfikować łańcucha z powodu nieznanego urzędu certyfikacji lub łańcuchów częściowych.

IgnoreWrongUsage 32

Ignoruj, że certyfikat nie został wystawiony dla bieżącego użycia podczas określania weryfikacji certyfikatu.

IgnoreInvalidName 64

Ignoruj, że certyfikat ma nieprawidłową nazwę podczas określania weryfikacji certyfikatu.

IgnoreInvalidPolicy 128

Ignoruj, że certyfikat ma nieprawidłowe zasady podczas określania weryfikacji certyfikatu.

IgnoreEndRevocationUnknown 256

Ignoruj, że odwołanie certyfikatu końcowego (certyfikatu użytkownika) jest nieznane podczas określania weryfikacji certyfikatu.

IgnoreCtlSignerRevocationUnknown 512

Ignoruj, że odwołanie osoby podpisujące listę zaufania certyfikatów (CTL) jest nieznane podczas określania weryfikacji certyfikatu.

IgnoreCertificateAuthorityRevocationUnknown 1024

Ignoruj, że odwołanie urzędu certyfikacji jest nieznane podczas określania weryfikacji certyfikatu.

IgnoreRootRevocationUnknown 2048

Ignoruj, że odwołanie główne jest nieznane podczas określania weryfikacji certyfikatu.

AllFlags 4095

Uwzględniane są wszystkie flagi dotyczące weryfikacji.

Przykłady

Poniższy przykład otwiera osobisty magazyn certyfikatów bieżącego użytkownika, umożliwia użytkownikowi wybranie certyfikatu, a następnie zapisanie informacji o certyfikacie i łańcuchu certyfikatów w konsoli programu . Dane wyjściowe zależą od wybranego certyfikatu.

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

Uwagi

Te flagi wskazują warunki, w których powinna zostać wykonana weryfikacja łańcucha. Jeśli na przykład aplikacja nie wymaga, aby wartości czasu certyfikatów w łańcuchu były prawidłowe, można użyć flagi IgnoreNotTimeValid.

Dotyczy