X509Certificate2.CreateFromPemFile(String, String) Metodo

Definizione

Consente di creare un nuovo certificato X509 dal contenuto del file di un certificato RFC 7468 con codifica PEM e una chiave privata.

public static System.Security.Cryptography.X509Certificates.X509Certificate2 CreateFromPemFile (string certPemFilePath, string? keyPemFilePath = default);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public static System.Security.Cryptography.X509Certificates.X509Certificate2 CreateFromPemFile (string certPemFilePath, string? keyPemFilePath = default);
static member CreateFromPemFile : string * string -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
static member CreateFromPemFile : string * string -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Shared Function CreateFromPemFile (certPemFilePath As String, Optional keyPemFilePath As String = Nothing) As X509Certificate2

Parametri

certPemFilePath
String

Percorso del certificato X509 con codifica PEM.

keyPemFilePath
String

Se specificato, il percorso della chiave privata con codifica PEM. Se non è specificato, verrà usato il file certPemFilePath per caricare la chiave privata.

Restituisce

Nuovo certificato con la chiave privata.

Attributi

Eccezioni

Il contenuto del percorso file in certPemFilePath non include un certificato con codifica PEM o ha un formato non corretto

-oppure-

Il contenuto del percorso file in keyPemFilePath non include una chiave privata con codifica PEM o ha un formato non corretto.

-oppure-

Il contenuto del percorso file in keyPemFilePath include una chiave che non corrisponde alla chiave pubblica nel certificato.

-oppure-

Il certificato usa un algoritmo a chiave pubblica sconosciuto.

certPemFilePath è null.

Commenti

Per altre informazioni sulle eccezioni che possono essere generate, vedere ReadAllText(String) la documentazione aggiuntiva.

SubjectPublicKeyInfo dal certificato determina le etichette PEM accettate per la chiave privata. Per i certificati RSA, le etichette PEM delle chiavi private accettate sono "RSA PRIVATE KEY" e "PRIVATE KEY". Per i certificati ECDSA, le etichette PEM delle chiavi private accettate sono "EC PRIVATE KEY" e "PRIVATE KEY". Per i certificati DSA, l'etichetta PEM della chiave privata accettata è "PRIVATE KEY".

Gli elementi con codifica PEM con un'etichetta diversa vengono ignorati.

I certificati e le chiavi con codifica PEM combinati non richiedono un ordine specifico. Per il certificato, il primo certificato con un'etichetta CERTIFICATE viene caricato. Per la chiave privata, la prima chiave privata con un'etichetta accettabile viene caricata. Scenari più avanzati per il caricamento di certificati e chiavi private possono sfruttare PemEncoding per enumerare i valori con codifica PEM e applicare qualsiasi comportamento di caricamento personalizzato.

Per le chiavi con codifica PEM protette da password, usare CreateFromEncryptedPemFile(String, ReadOnlySpan<Char>, String) per specificare una password.

Si applica a