X509VerificationFlags Sabit listesi
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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
- Ö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ını belirlerken CTL'nin süresinin dolması gibi nedenlerle sertifika güven listesinin (CTL) geçerli olmadığını yoksayın. |
IgnoreCtlSignerRevocationUnknown | 512 | Sertifika doğrulamasını belirlerken 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ı belirlenirken sertifikanın geçersiz bir ada sahip olduğunu yoksayın. |
IgnoreInvalidPolicy | 128 | Sertifika doğrulaması belirlenirken sertifikanın geçersiz ilkeye sahip olduğunu yoksayın. |
IgnoreNotTimeNested | 4 | CA (sertifika yetkilisi) sertifikasının ve verilen sertifikanın sertifikayı doğrularken iç içe geçmemiş 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; 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 geçerli 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 zaman değerlerinin geçerli olmasını gerektirmiyorsa IgnoreNotTimeValid bayrağı kullanılabilir.