Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

X509BasicConstraintsExtension classe

 

Date de publication : novembre 2016

Définit les contraintes placées sur un certificat. Cette classe ne peut pas être héritée.

Espace de noms:   System.Security.Cryptography.X509Certificates
Assembly:  System (dans System.dll)

System.Object
  System.Security.Cryptography.AsnEncodedData
    System.Security.Cryptography.X509Certificates.X509Extension
      System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension

public sealed class X509BasicConstraintsExtension : X509Extension

NomDescription
System_CAPS_pubmethodX509BasicConstraintsExtension()

Initialise une nouvelle instance de la classe X509BasicConstraintsExtension.

System_CAPS_pubmethodX509BasicConstraintsExtension(AsnEncodedData, Boolean)

Initialise une nouvelle instance de la X509BasicConstraintsExtension à l’aide de la classe une AsnEncodedData objet et une valeur qui indique si l’extension est essentielle.

System_CAPS_pubmethodX509BasicConstraintsExtension(Boolean, Boolean, Int32, Boolean)

Initialise une nouvelle instance de la classe X509BasicConstraintsExtension. Paramètres spécifient une valeur qui indique si un certificat est une autorité de certification, une valeur qui indique si le certificat a une restriction sur le nombre de niveaux de chemin d’accès qu’il autorise, le nombre de niveaux autorisés dans le chemin d’accès d’un certificat et une valeur qui indique si l’extension est essentielle.

NomDescription
System_CAPS_pubpropertyCertificateAuthority

Obtient une valeur indiquant si un certificat est un certificat d’autorité de certification.

System_CAPS_pubpropertyCritical

Obtient une valeur booléenne qui indique si l’extension est essentielle.(Hérité de X509Extension.)

System_CAPS_pubpropertyHasPathLengthConstraint

Obtient une valeur qui indique si un certificat a une restriction sur le nombre de niveaux de chemin d’accès qu’il autorise.

System_CAPS_pubpropertyOid

Obtient ou définit le Oid la valeur pour un AsnEncodedData objet.(Hérité de AsnEncodedData.)

System_CAPS_pubpropertyPathLengthConstraint

Obtient le nombre de niveaux autorisés dans le chemin d’accès d’un certificat.

System_CAPS_pubpropertyRawData

Obtient ou définit les données encodées ASN.1 Abstract Syntax Notation One représentées dans un tableau d’octets.(Hérité de AsnEncodedData.)

NomDescription
System_CAPS_pubmethodCopyFrom(AsnEncodedData)

Initialise une nouvelle instance de la X509BasicConstraintsExtension à l’aide de la classe une AsnEncodedData objet.(Remplace X509Extension.CopyFrom(AsnEncodedData).)

System_CAPS_pubmethodEquals(Object)

Détermine si l'objet spécifié est identique à l'objet actuel.(Hérité de Object.)

System_CAPS_pubmethodFormat(Boolean)

Retourne une version mise en forme des données ASN.1 Abstract Syntax Notation One codée sous forme de chaîne.(Hérité de AsnEncodedData.)

System_CAPS_pubmethodGetHashCode()

Fait office de fonction de hachage par défaut.(Hérité de Object.)

System_CAPS_pubmethodGetType()

Obtient le Type de l'instance actuelle.(Hérité de Object.)

System_CAPS_pubmethodToString()

Retourne une chaîne qui représente l'objet actuel.(Hérité de Object.)

This class provides properties that define the basic constraints set on a certificate.

The following code example demonstrates how to open a user’s personal certificate store and display information about each certificate in the store. This example uses the T:System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension class to display the information.

using System;
using System.Security.Cryptography;
using System.Security.Cryptography.X509Certificates;

public class CertSelect
{
    public static void Main()
    {
        try
        {
            X509Store store = new X509Store("MY", StoreLocation.CurrentUser);
            store.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly);

            X509Certificate2Collection collection = (X509Certificate2Collection)store.Certificates;
            for (int i = 0; i < collection.Count; i++)
            {
                foreach (X509Extension extension in collection[i].Extensions)
                {
                    Console.WriteLine(extension.Oid.FriendlyName + "(" + extension.Oid.Value + ")");


                    if (extension.Oid.FriendlyName == "Key Usage")
                    {
                        X509KeyUsageExtension ext = (X509KeyUsageExtension)extension;
                        Console.WriteLine(ext.KeyUsages);
                    }

                    if (extension.Oid.FriendlyName == "Basic Constraints")
                    {
                        X509BasicConstraintsExtension ext = (X509BasicConstraintsExtension)extension;
                        Console.WriteLine(ext.CertificateAuthority);
                        Console.WriteLine(ext.HasPathLengthConstraint);
                        Console.WriteLine(ext.PathLengthConstraint);
                    }

                    if (extension.Oid.FriendlyName == "Subject Key Identifier")
                    {
                        X509SubjectKeyIdentifierExtension ext = (X509SubjectKeyIdentifierExtension)extension;
                        Console.WriteLine(ext.SubjectKeyIdentifier);
                    }

                    if (extension.Oid.FriendlyName == "Enhanced Key Usage")
                    {
                        X509EnhancedKeyUsageExtension ext = (X509EnhancedKeyUsageExtension)extension;
                        OidCollection oids = ext.EnhancedKeyUsages;
                        foreach (Oid oid in oids)
                        {
                            Console.WriteLine(oid.FriendlyName + "(" + oid.Value + ")");
                        }
                    }
                }
            }
            store.Close();
        }
        catch (CryptographicException)
        {
            Console.WriteLine("Information could not be written out for this certificate.");
        }
    }
}

.NET Framework
Disponible depuis 2.0

Tous les membres statiques publics ( Shared en Visual Basic) de ce type sont thread-safe. Les membres d’instance n’ont pas la garantie d’être thread-safe.

Retour au début
Afficher: