Share via


X509VerificationFlags Enum

Definisi

Menentukan kondisi di mana verifikasi sertifikat dalam rantai X509 harus dilakukan.

Enumerasi ini mendukung kombinasi bitwise dari nilai yang termasuk di dalamnya.

public enum class X509VerificationFlags
[System.Flags]
public enum X509VerificationFlags
[<System.Flags>]
type X509VerificationFlags = 
Public Enum X509VerificationFlags
Warisan
X509VerificationFlags
Atribut

Bidang

AllFlags 4095

Semua bendera yang berkaitan dengan verifikasi disertakan.

AllowUnknownCertificateAuthority 16

Abaikan bahwa rantai tidak dapat diverifikasi karena otoritas sertifikat (CA) atau rantai parsial yang tidak diketahui.

IgnoreCertificateAuthorityRevocationUnknown 1024

Abaikan bahwa pencabutan otoritas sertifikat tidak diketahui saat menentukan verifikasi sertifikat.

IgnoreCtlNotTimeValid 2

Abaikan bahwa daftar kepercayaan sertifikat (CTL) tidak valid, karena alasan seperti CTL telah kedaluwarsa, saat menentukan verifikasi sertifikat.

IgnoreCtlSignerRevocationUnknown 512

Abaikan bahwa pencabutan penanda tangan daftar kepercayaan sertifikat (CTL) tidak diketahui saat menentukan verifikasi sertifikat.

IgnoreEndRevocationUnknown 256

Abaikan bahwa pencabutan sertifikat akhir (sertifikat pengguna) tidak diketahui saat menentukan verifikasi sertifikat.

IgnoreInvalidBasicConstraints 8

Abaikan bahwa batasan dasar tidak valid saat menentukan verifikasi sertifikat.

IgnoreInvalidName 64

Abaikan bahwa sertifikat memiliki nama yang tidak valid saat menentukan verifikasi sertifikat.

IgnoreInvalidPolicy 128

Abaikan bahwa sertifikat memiliki kebijakan yang tidak valid saat menentukan verifikasi sertifikat.

IgnoreNotTimeNested 4

Abaikan bahwa sertifikat CA (otoritas sertifikat) dan sertifikat yang dikeluarkan memiliki periode validitas yang tidak ditumpuk saat memverifikasi sertifikat. Misalnya, sertifikasi CA dapat berlaku dari 1 Januari hingga 1 Desember dan sertifikat yang dikeluarkan dari 2 Januari hingga 2 Desember, yang berarti periode validitas tidak bersarang.

IgnoreNotTimeValid 1

Abaikan sertifikat dalam rantai yang tidak valid baik karena telah kedaluwarsa atau belum berlaku saat menentukan validitas sertifikat.

IgnoreRootRevocationUnknown 2048

Abaikan bahwa pencabutan akar tidak diketahui saat menentukan verifikasi sertifikat.

IgnoreWrongUsage 32

Abaikan bahwa sertifikat tidak dikeluarkan untuk penggunaan saat ini saat menentukan verifikasi sertifikat.

NoFlag 0

Tidak ada bendera yang berkaitan dengan verifikasi yang disertakan.

Contoh

Contoh berikut membuka penyimpanan sertifikat pribadi pengguna saat ini, memungkinkan pengguna untuk memilih sertifikat, lalu menulis informasi rantai sertifikat dan sertifikat ke konsol. Output tergantung pada sertifikat yang Anda pilih.

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

Keterangan

Bendera ini menunjukkan kondisi di mana verifikasi rantai harus terjadi. Misalnya, jika aplikasi tidak memerlukan nilai waktu sertifikat dalam rantai agar valid, bendera IgnoreNotTimeValid dapat digunakan.

Berlaku untuk