X509VerificationFlags Enum
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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
- 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.