X509KeyUsageExtension Costruttori

Definizione

Inizializza una nuova istanza della classe X509KeyUsageExtension.

Overload

X509KeyUsageExtension()

Inizializza una nuova istanza della classe X509KeyUsageExtension.

X509KeyUsageExtension(AsnEncodedData, Boolean)

Inizializza una nuova istanza della classe X509KeyUsageExtension utilizzando un oggetto AsnEncodedData e un valore che indica se l'estensione è critica.

X509KeyUsageExtension(X509KeyUsageFlags, Boolean)

Inizializza una nuova istanza della classe X509KeyUsageExtension utilizzando il valore di X509KeyUsageFlags specificato e un valore che indica se l'estensione è critica.

X509KeyUsageExtension()

Origine:
X509KeyUsageExtension.cs
Origine:
X509KeyUsageExtension.cs
Origine:
X509KeyUsageExtension.cs

Inizializza una nuova istanza della classe X509KeyUsageExtension.

C#
public X509KeyUsageExtension ();

Esempio

Nell'esempio di codice seguente viene illustrato come aprire l'archivio certificati personale di un utente e visualizzare informazioni su ogni certificato nell'archivio. In questo esempio viene utilizzata la X509KeyUsageExtension classe per visualizzare le informazioni.

C#
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.");
        }
    }
}

Si applica a

.NET 9 e altre versioni
Prodotto Versioni
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

X509KeyUsageExtension(AsnEncodedData, Boolean)

Origine:
X509KeyUsageExtension.cs
Origine:
X509KeyUsageExtension.cs
Origine:
X509KeyUsageExtension.cs

Inizializza una nuova istanza della classe X509KeyUsageExtension utilizzando un oggetto AsnEncodedData e un valore che indica se l'estensione è critica.

C#
public X509KeyUsageExtension (System.Security.Cryptography.AsnEncodedData encodedKeyUsage, bool critical);

Parametri

encodedKeyUsage
AsnEncodedData

Dati codificati da utilizzare per creare l'estensione.

critical
Boolean

true se l'estensione è critica; in caso contrario, false.

Commenti

Utilizzare questo costruttore se le informazioni per creare l'estensione si trovano già in un AsnEncodedData oggetto .

Si applica a

.NET 9 e altre versioni
Prodotto Versioni
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

X509KeyUsageExtension(X509KeyUsageFlags, Boolean)

Origine:
X509KeyUsageExtension.cs
Origine:
X509KeyUsageExtension.cs
Origine:
X509KeyUsageExtension.cs

Inizializza una nuova istanza della classe X509KeyUsageExtension utilizzando il valore di X509KeyUsageFlags specificato e un valore che indica se l'estensione è critica.

C#
public X509KeyUsageExtension (System.Security.Cryptography.X509Certificates.X509KeyUsageFlags keyUsages, bool critical);

Parametri

keyUsages
X509KeyUsageFlags

Uno dei valori di X509KeyUsageFlags che specifica la modalità di utilizzo della chiave.

critical
Boolean

true se l'estensione è critica; in caso contrario, false.

Si applica a

.NET 9 e altre versioni
Prodotto Versioni
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1