X509EnhancedKeyUsageExtension Konstruktory

Definicja

Inicjuje nowe wystąpienie klasy X509EnhancedKeyUsageExtension.

Przeciążenia

X509EnhancedKeyUsageExtension()

Inicjuje nowe wystąpienie klasy X509EnhancedKeyUsageExtension.

X509EnhancedKeyUsageExtension(AsnEncodedData, Boolean)

Inicjuje nowe wystąpienie X509EnhancedKeyUsageExtension klasy przy użyciu AsnEncodedData obiektu i wartość, która określa, czy rozszerzenie ma krytyczne znaczenie.

X509EnhancedKeyUsageExtension(OidCollection, Boolean)

Inicjuje X509EnhancedKeyUsageExtension nowe wystąpienie klasy przy użyciu wartości OidCollection i, która określa, czy rozszerzenie ma krytyczne znaczenie.

X509EnhancedKeyUsageExtension()

Źródło:
X509EnhancedKeyUsageExtension.cs
Źródło:
X509EnhancedKeyUsageExtension.cs
Źródło:
X509EnhancedKeyUsageExtension.cs

Inicjuje nowe wystąpienie klasy X509EnhancedKeyUsageExtension.

C#
public X509EnhancedKeyUsageExtension ();

Przykłady

W poniższym przykładzie kodu pokazano, jak otworzyć osobisty magazyn certyfikatów użytkownika i wyświetlić informacje o każdym certyfikacie w magazynie. W tym przykładzie użyto X509EnhancedKeyUsageExtension klasy do wyświetlenia informacji.

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

Uwagi

Użyj tej metody, aby utworzyć nowe wystąpienie X509EnhancedKeyUsageExtension klasy. Po utworzeniu wystąpienia można użyć EnhancedKeyUsages właściwości , aby uzyskać kolekcję identyfikatorów obiektów (OID), które wskazują aplikacje używające klucza.

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.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

X509EnhancedKeyUsageExtension(AsnEncodedData, Boolean)

Źródło:
X509EnhancedKeyUsageExtension.cs
Źródło:
X509EnhancedKeyUsageExtension.cs
Źródło:
X509EnhancedKeyUsageExtension.cs

Inicjuje nowe wystąpienie X509EnhancedKeyUsageExtension klasy przy użyciu AsnEncodedData obiektu i wartość, która określa, czy rozszerzenie ma krytyczne znaczenie.

C#
public X509EnhancedKeyUsageExtension (System.Security.Cryptography.AsnEncodedData encodedEnhancedKeyUsages, bool critical);

Parametry

encodedEnhancedKeyUsages
AsnEncodedData

Zakodowane dane do użycia w celu utworzenia rozszerzenia.

critical
Boolean

true jeśli rozszerzenie ma krytyczne znaczenie; w przeciwnym razie , false.

Uwagi

Użyj tego konstruktora, jeśli informacje do utworzenia rozszerzenia są już w AsnEncodedData obiekcie.

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.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

X509EnhancedKeyUsageExtension(OidCollection, Boolean)

Źródło:
X509EnhancedKeyUsageExtension.cs
Źródło:
X509EnhancedKeyUsageExtension.cs
Źródło:
X509EnhancedKeyUsageExtension.cs

Inicjuje X509EnhancedKeyUsageExtension nowe wystąpienie klasy przy użyciu wartości OidCollection i, która określa, czy rozszerzenie ma krytyczne znaczenie.

C#
public X509EnhancedKeyUsageExtension (System.Security.Cryptography.OidCollection enhancedKeyUsages, bool critical);

Parametry

enhancedKeyUsages
OidCollection

Kolekcja OidCollection .

critical
Boolean

true jeśli rozszerzenie ma krytyczne znaczenie; w przeciwnym razie , false.

Wyjątki

Określona wartość OidCollection zawiera co najmniej jedną uszkodzoną wartość.

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.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