X509VerificationFlags Sabit listesi

Tanım

X509 zincirindeki sertifikaların doğrulanması gereken koşulları belirtir.

Bu sabit listesi, üyeleri için bit düzeyinde karşılaştırmayı destekler.

public enum class X509VerificationFlags
[System.Flags]
public enum X509VerificationFlags
[<System.Flags>]
type X509VerificationFlags = 
Public Enum X509VerificationFlags
Devralma
X509VerificationFlags
Öznitelikler

Alanlar

AllFlags 4095

Doğrulamayla ilgili tüm bayraklar dahil edilir.

AllowUnknownCertificateAuthority 16

Bilinmeyen bir sertifika yetkilisi (CA) veya kısmi zincirler nedeniyle zincirin doğrulanamadığını yoksayın.

IgnoreCertificateAuthorityRevocationUnknown 1024

Sertifika doğrulaması belirlenirken sertifika yetkilisi iptalinin bilinmediğini yoksayın.

IgnoreCtlNotTimeValid 2

Sertifika doğrulaması belirlenirken CTL'nin süresinin dolması gibi nedenlerle sertifika güven listesinin (CTL) geçerli olmadığını yoksayın.

IgnoreCtlSignerRevocationUnknown 512

Sertifika doğrulaması belirlenirken sertifika güven listesi (CTL) imzalayan iptalinin bilinmediğini yoksayın.

IgnoreEndRevocationUnknown 256

Sertifika doğrulaması belirlenirken son sertifika (kullanıcı sertifikası) iptalinin bilinmediğini yoksayın.

IgnoreInvalidBasicConstraints 8

Sertifika doğrulaması belirlenirken temel kısıtlamaların geçerli olmadığını yoksayın.

IgnoreInvalidName 64

Sertifika doğrulamasını belirlerken sertifikanın geçersiz bir ada sahip olduğunu yoksayın.

IgnoreInvalidPolicy 128

Sertifika doğrulamasını belirlerken sertifikanın geçersiz ilkeye sahip olduğunu yoksayın.

IgnoreNotTimeNested 4

CA (sertifika yetkilisi) sertifikasının ve verilen sertifikanın sertifika doğrulanırken iç içe yerleştirilmemiş geçerlilik sürelerine sahip olduğunu yoksayın. Örneğin, CA sertifikası 1 Ocak ile 1 Aralık arasında ve verilen sertifika 2 Ocak ile 2 Aralık arasında geçerli olabilir ve bu da geçerlilik sürelerinin iç içe geçirilmediği anlamına gelir.

IgnoreNotTimeValid 1

Süresi dolduğundan veya sertifika geçerliliği belirlenirken henüz etkin olmadıklarından, zincirdeki geçerli olmayan sertifikaları yoksayın.

IgnoreRootRevocationUnknown 2048

Sertifika doğrulaması belirlenirken kök iptalin bilinmediğini yoksayın.

IgnoreWrongUsage 32

Sertifika doğrulaması belirlenirken geçerli kullanım için sertifikanın verilmediğini yoksayın.

NoFlag 0

Doğrulamayla ilgili hiçbir bayrak dahil değildir.

Örnekler

Aşağıdaki örnek geçerli kullanıcının kişisel sertifika depounu açar, kullanıcının bir sertifika seçmesine izin verir, ardından sertifika ve sertifika zinciri bilgilerini konsola yazar. Çıkış, seçtiğiniz sertifikaya bağlıdır.

//Output chain information of the selected certificate.
X509Chain ^ ch = gcnew 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.
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)

Açıklamalar

Bu bayraklar, zincir doğrulamanın hangi koşullar altında gerçekleşmesi gerektiğini belirtir. Örneğin, bir uygulama bir zincirdeki sertifika saat değerlerinin geçerli olmasını gerektirmiyorsa IgnoreNotTimeValid bayrağı kullanılabilir.

Şunlara uygulanır