X509Certificate2.Import Metodo

Definizione

Compila un oggetto X509Certificate2 con le informazioni del certificato specificate.

Overload

Import(Byte[])
Obsoleti.

Compila un oggetto X509Certificate2 con i dati di una matrice di byte.

Import(String)
Obsoleti.

Compila un oggetto X509Certificate2 con le informazioni di un file di certificato.

Import(Byte[], SecureString, X509KeyStorageFlags)
Obsoleti.

Popola un oggetto X509Certificate2 usando i dati di una matrice di byte, una password e un flag di archiviazione delle chiavi.

Import(Byte[], String, X509KeyStorageFlags)
Obsoleti.

Compila un oggetto X509Certificate2 utilizzando i dati di una matrice di byte, una password e flag per determinare la modalità di importazione della chiave privata.

Import(String, SecureString, X509KeyStorageFlags)
Obsoleti.

Popola un oggetto X509Certificate2 con le informazioni di un file di certificato, una password e un flag di archiviazione delle chiavi.

Import(String, String, X509KeyStorageFlags)
Obsoleti.

Compila un oggetto X509Certificate2 con le informazioni di un file di certificato, una password e un valore X509KeyStorageFlags.

Import(Byte[])

Origine:
X509Certificate2.cs
Origine:
X509Certificate2.cs
Origine:
X509Certificate2.cs

Attenzione

X509Certificate and X509Certificate2 are immutable. Use the appropriate constructor to create a new certificate.

Compila un oggetto X509Certificate2 con i dati di una matrice di byte.

C#
public override void Import (byte[] rawData);
C#
[System.Obsolete("X509Certificate and X509Certificate2 are immutable. Use the appropriate constructor to create a new certificate.", DiagnosticId="SYSLIB0026", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public override void Import (byte[] rawData);

Parametri

rawData
Byte[]

Matrice di byte contenente i dati di un certificato X.509.

Attributi

Commenti

Questo metodo può essere usato per accettare una matrice di byte non elaborata di un certificato X.509 e popolare l'oggetto con i X509Certificate2 relativi valori associati.

Poiché questo metodo accetta solo una matrice di byte, può essere usata solo per i tipi di certificato che non richiedono una password, incluso un certificato X.509 con codifica BASE64 o con codifica DER o un certificato PFX/PKCS12. Si noti che un certificato PFX/PKCS12 può contenere più certificati. In tal caso, viene usato il primo certificato associato a una chiave privata o, se non viene trovata alcuna chiave privata, viene usato il primo certificato.

Si applica a

.NET 9 e altre versioni
Prodotto Versioni (obsoleto)
.NET 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 2.0, 2.1

Import(String)

Origine:
X509Certificate2.cs
Origine:
X509Certificate2.cs
Origine:
X509Certificate2.cs

Attenzione

X509Certificate and X509Certificate2 are immutable. Use the appropriate constructor to create a new certificate.

Compila un oggetto X509Certificate2 con le informazioni di un file di certificato.

C#
public override void Import (string fileName);
C#
[System.Obsolete("X509Certificate and X509Certificate2 are immutable. Use the appropriate constructor to create a new certificate.", DiagnosticId="SYSLIB0026", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public override void Import (string fileName);

Parametri

fileName
String

Nome di un certificato.

Attributi

Commenti

Questo metodo usa un file di certificato, ad esempio un file con estensione cer, che rappresenta un certificato X.509 e popola l'oggetto X509Certificate2 con il certificato che il file contiene.

Questo metodo può essere usato con diversi tipi di certificato, inclusi certificati con codifica Base64 o con codifica DER X.509, certificati PFX/PKCS12 e certificati di firma come Authenticode. Si noti che un certificato PFX/PKCS12 può contenere più certificati. In tal caso, viene usato il primo certificato associato a una chiave privata o, se non viene trovata alcuna chiave privata, viene usato il primo certificato.

Si applica a

.NET 9 e altre versioni
Prodotto Versioni (obsoleto)
.NET 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 2.0, 2.1

Import(Byte[], SecureString, X509KeyStorageFlags)

Origine:
X509Certificate2.cs
Origine:
X509Certificate2.cs
Origine:
X509Certificate2.cs

Attenzione

X509Certificate and X509Certificate2 are immutable. Use the appropriate constructor to create a new certificate.

Importante

Questa API non è conforme a CLS.

Popola un oggetto X509Certificate2 usando i dati di una matrice di byte, una password e un flag di archiviazione delle chiavi.

C#
[System.CLSCompliant(false)]
public override void Import (byte[] rawData, System.Security.SecureString? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
[System.CLSCompliant(false)]
[System.Obsolete("X509Certificate and X509Certificate2 are immutable. Use the appropriate constructor to create a new certificate.", DiagnosticId="SYSLIB0026", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public override void Import (byte[] rawData, System.Security.SecureString? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
[System.CLSCompliant(false)]
public override void Import (byte[] rawData, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
public override void Import (byte[] rawData, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);

Parametri

rawData
Byte[]

Matrice di byte contenente i dati di un certificato X.509.

password
SecureString

Password necessaria per accedere ai dati del certificato X.509.

keyStorageFlags
X509KeyStorageFlags

Combinazione bit per bit dei valori di enumerazione che specificano la posizione e la modalità di importazione del certificato.

Attributi

Commenti

È possibile usare questo metodo per i tipi di certificato, ad esempio certificati con codifica Base64 o con codifica DER X.509 o PFX/PKCS12. Si noti che un certificato PFX/PKCS12 può contenere più certificati. In tal caso, viene usato il primo certificato associato a una chiave privata o, se non viene trovata alcuna chiave privata, viene usato il primo certificato.

Importante

Codice non rigido mai una password all'interno del codice sorgente. Le password hardcoded possono essere recuperate da un assembly usando il Ildasm.exe (IL Disassembler) , un editor esadecimale o semplicemente aprendo l'assembly in un editor di testo, ad esempio Notepad.exe.

Si applica a

.NET 9 e altre versioni
Prodotto Versioni (obsoleto)
.NET 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 2.0, 2.1

Import(Byte[], String, X509KeyStorageFlags)

Origine:
X509Certificate2.cs
Origine:
X509Certificate2.cs
Origine:
X509Certificate2.cs

Attenzione

X509Certificate and X509Certificate2 are immutable. Use the appropriate constructor to create a new certificate.

Compila un oggetto X509Certificate2 utilizzando i dati di una matrice di byte, una password e flag per determinare la modalità di importazione della chiave privata.

C#
public override void Import (byte[] rawData, string? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
[System.Obsolete("X509Certificate and X509Certificate2 are immutable. Use the appropriate constructor to create a new certificate.", DiagnosticId="SYSLIB0026", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public override void Import (byte[] rawData, string? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
public override void Import (byte[] rawData, string password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);

Parametri

rawData
Byte[]

Matrice di byte contenente i dati di un certificato X.509.

password
String

Password necessaria per accedere ai dati del certificato X.509.

keyStorageFlags
X509KeyStorageFlags

Combinazione bit per bit dei valori di enumerazione che specificano la posizione e la modalità di importazione del certificato.

Attributi

Esempio

Nell'esempio di codice seguente viene creato un eseguibile della riga di comando che accetta un file di certificato come argomento e stampa varie proprietà del certificato nella console.

C#
using System;
using System.Security.Cryptography;
using System.Security.Permissions;
using System.IO;
using System.Security.Cryptography.X509Certificates;

class CertInfo
{
    //Reads a file.
    internal static byte[] ReadFile (string fileName)
    {
        FileStream f = new FileStream(fileName, FileMode.Open, FileAccess.Read);
        int size = (int)f.Length;
        byte[] data = new byte[size];
        size = f.Read(data, 0, size);
        f.Close();
        return data;
    }
    //Main method begins here.
    static void Main(string[] args)
    {
        //Test for correct number of arguments.
        if (args.Length < 1)
        {
            Console.WriteLine("Usage: CertInfo <filename>");
            return;
        }
        try
        {
            X509Certificate2 x509 = new X509Certificate2();
            //Create X509Certificate2 object from .cer file.
            byte[] rawData = ReadFile(args[0]);
            x509.Import(rawData);

            //Print to console information contained in the certificate.
            Console.WriteLine("{0}Subject: {1}{0}", Environment.NewLine, x509.Subject);
            Console.WriteLine("{0}Issuer: {1}{0}", Environment.NewLine, x509.Issuer);
            Console.WriteLine("{0}Version: {1}{0}", Environment.NewLine, x509.Version);
            Console.WriteLine("{0}Valid Date: {1}{0}", Environment.NewLine, x509.NotBefore);
            Console.WriteLine("{0}Expiry Date: {1}{0}", Environment.NewLine, x509.NotAfter);
            Console.WriteLine("{0}Thumbprint: {1}{0}", Environment.NewLine, x509.Thumbprint);
            Console.WriteLine("{0}Serial Number: {1}{0}", Environment.NewLine, x509.SerialNumber);
            Console.WriteLine("{0}Friendly Name: {1}{0}", Environment.NewLine, x509.PublicKey.Oid.FriendlyName);
            Console.WriteLine("{0}Public Key Format: {1}{0}", Environment.NewLine, x509.PublicKey.EncodedKeyValue.Format(true));
            Console.WriteLine("{0}Raw Data Length: {1}{0}", Environment.NewLine, x509.RawData.Length);
            Console.WriteLine("{0}Certificate to string: {1}{0}", Environment.NewLine, x509.ToString(true));
            Console.WriteLine("{0}Certificate to XML String: {1}{0}", Environment.NewLine, x509.PublicKey.Key.ToXmlString(false));

            //Add the certificate to a X509Store.
            X509Store store = new X509Store();
            store.Open(OpenFlags.MaxAllowed);
            store.Add(x509);
            store.Close();
        }
        catch (DirectoryNotFoundException)
        {
               Console.WriteLine("Error: The directory specified could not be found.");
        }
        catch (IOException)
        {
            Console.WriteLine("Error: A file in the directory could not be accessed.");
        }
        catch (NullReferenceException)
        {
            Console.WriteLine("File must be a .cer file. Program does not have access to that type of file.");
        }
    }
}

Commenti

Questo metodo può essere usato per popolare un oggetto usando una X509Certificate2 password per il certificato rappresentato dalla matrice di byte. Il X509KeyStorageFlags valore può essere usato per controllare dove e come importare la chiave privata.

Questo metodo accetta una matrice di byte e può essere usata per i tipi di certificato, ad esempio certificati con codifica Base64 o con codifica DER.X.509 o certificati PFX/PKCS12. Si noti che un certificato PFX/PKCS12 può contenere più certificati. In tal caso, viene usato il primo certificato associato a una chiave privata o, se non viene trovata alcuna chiave privata, viene usato il primo certificato.

Importante

Codice non rigido mai una password all'interno del codice sorgente. Le password hardcoded possono essere recuperate da un assembly usando il Ildasm.exe (IL Disassembler) , un editor esadecimale o semplicemente aprendo l'assembly in un editor di testo, ad esempio Notepad.exe.

Si applica a

.NET 9 e altre versioni
Prodotto Versioni (obsoleto)
.NET 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 2.0, 2.1

Import(String, SecureString, X509KeyStorageFlags)

Origine:
X509Certificate2.cs
Origine:
X509Certificate2.cs
Origine:
X509Certificate2.cs

Attenzione

X509Certificate and X509Certificate2 are immutable. Use the appropriate constructor to create a new certificate.

Importante

Questa API non è conforme a CLS.

Popola un oggetto X509Certificate2 con le informazioni di un file di certificato, una password e un flag di archiviazione delle chiavi.

C#
[System.CLSCompliant(false)]
public override void Import (string fileName, System.Security.SecureString? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
[System.CLSCompliant(false)]
[System.Obsolete("X509Certificate and X509Certificate2 are immutable. Use the appropriate constructor to create a new certificate.", DiagnosticId="SYSLIB0026", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public override void Import (string fileName, System.Security.SecureString? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
[System.CLSCompliant(false)]
public override void Import (string fileName, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
public override void Import (string fileName, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);

Parametri

fileName
String

Nome di un file di certificato.

password
SecureString

Password necessaria per accedere ai dati del certificato X.509.

keyStorageFlags
X509KeyStorageFlags

Combinazione bit per bit dei valori di enumerazione che specificano la posizione e la modalità di importazione del certificato.

Attributi

Commenti

Nota sulla sicurezza Codice non rigido mai una password all'interno del codice sorgente. Le password hardcoded possono essere recuperate da un assembly usando il Ildasm.exe (IL Disassembler) , un editor esadecimale o semplicemente aprendo l'assembly in un editor di testo, ad esempio Notepad.exe.

Si applica a

.NET 9 e altre versioni
Prodotto Versioni (obsoleto)
.NET 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 2.0, 2.1

Import(String, String, X509KeyStorageFlags)

Origine:
X509Certificate2.cs
Origine:
X509Certificate2.cs
Origine:
X509Certificate2.cs

Attenzione

X509Certificate and X509Certificate2 are immutable. Use the appropriate constructor to create a new certificate.

Compila un oggetto X509Certificate2 con le informazioni di un file di certificato, una password e un valore X509KeyStorageFlags.

C#
public override void Import (string fileName, string? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
[System.Obsolete("X509Certificate and X509Certificate2 are immutable. Use the appropriate constructor to create a new certificate.", DiagnosticId="SYSLIB0026", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public override void Import (string fileName, string? password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);
C#
public override void Import (string fileName, string password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags);

Parametri

fileName
String

Nome di un file di certificato.

password
String

Password necessaria per accedere ai dati del certificato X.509.

keyStorageFlags
X509KeyStorageFlags

Combinazione bit per bit dei valori di enumerazione che specificano la posizione e la modalità di importazione del certificato.

Attributi

Commenti

Questo metodo può essere usato popolare un X509Certificate2 oggetto con informazioni da un file di certificato, una password e un X509KeyStorageFlags valore.

Importante

Codice non rigido mai una password all'interno del codice sorgente. Le password hardcoded possono essere recuperate da un assembly usando il Ildasm.exe (IL Disassembler) , un editor esadecimale o semplicemente aprendo l'assembly in un editor di testo, ad esempio Notepad.exe.

Si applica a

.NET 9 e altre versioni
Prodotto Versioni (obsoleto)
.NET 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 2.0, 2.1