X509VerificationFlags Enum
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee geeft u voorwaarden op waaronder verificatie van certificaten in de X509-keten moet worden uitgevoerd.
Deze opsomming ondersteunt een bitsgewijze combinatie van de waarden van de leden.
public enum class X509VerificationFlags
[System.Flags]
public enum X509VerificationFlags
[<System.Flags>]
type X509VerificationFlags =
Public Enum X509VerificationFlags
- Overname
- Kenmerken
Velden
| Name | Waarde | Description |
|---|---|---|
| NoFlag | 0 | Er zijn geen vlaggen opgenomen die betrekking hebben op verificatie. |
| IgnoreNotTimeValid | 1 | Negeer certificaten in de keten die niet geldig zijn, omdat ze zijn verlopen of ze zijn nog niet van kracht bij het bepalen van de geldigheid van het certificaat. |
| IgnoreCtlNotTimeValid | 2 | Negeer dat de certificaatvertrouwenslijst (CTL) niet geldig is, om redenen zoals de CTL is verlopen, bij het bepalen van certificaatverificatie. |
| IgnoreNotTimeNested | 4 | Negeer dat het CA-certificaat (certificeringsinstantie) en het uitgegeven certificaat geldigheidsperioden hebben die niet zijn genest bij het verifiëren van het certificaat. Het CA-certificaat kan bijvoorbeeld geldig zijn van 1 januari tot en met 1 december en het uitgegeven certificaat van 2 januari tot en met 2 december, wat betekent dat de geldigheidsperioden niet zijn genest. |
| IgnoreInvalidBasicConstraints | 8 | Negeer dat de basisbeperkingen niet geldig zijn bij het bepalen van certificaatverificatie. |
| AllowUnknownCertificateAuthority | 16 | Negeer dat de keten niet kan worden geverifieerd vanwege een onbekende certificeringsinstantie (CA) of gedeeltelijke ketens. |
| IgnoreWrongUsage | 32 | Negeer dat het certificaat niet is uitgegeven voor het huidige gebruik bij het bepalen van certificaatverificatie. |
| IgnoreInvalidName | 64 | Negeer dat het certificaat een ongeldige naam heeft bij het bepalen van certificaatverificatie. |
| IgnoreInvalidPolicy | 128 | Negeer dat het certificaat ongeldig beleid heeft bij het bepalen van certificaatverificatie. |
| IgnoreEndRevocationUnknown | 256 | Negeer dat het intrekken van het eindcertificaat (het gebruikerscertificaat) onbekend is bij het bepalen van de certificaatverificatie. |
| IgnoreCtlSignerRevocationUnknown | 512 | Negeer dat het intrekken van de certificaatvertrouwenslijst (CTL) onbekend is bij het bepalen van certificaatverificatie. |
| IgnoreCertificateAuthorityRevocationUnknown | 1024 | Negeer dat het intrekken van de certificeringsinstantie onbekend is bij het bepalen van certificaatverificatie. |
| IgnoreRootRevocationUnknown | 2048 | Negeer dat de basisintrekking onbekend is bij het bepalen van certificaatverificatie. |
| AllFlags | 4095 | Alle vlaggen met betrekking tot verificatie zijn opgenomen. |
Voorbeelden
In het volgende voorbeeld wordt het persoonlijke certificaatarchief van de huidige gebruiker geopend, kan de gebruiker een certificaat selecteren en vervolgens certificaat- en certificaatketengegevens naar de console schrijven. De uitvoer is afhankelijk van het certificaat dat u selecteert.
//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)
Opmerkingen
Deze vlaggen geven de voorwaarden aan waaronder verificatie van de keten moet plaatsvinden. Als een toepassing bijvoorbeeld geen certificaattijdwaarden in een keten vereist, kan de vlag IgnoreNotTimeValid worden gebruikt.