Partilhar via


X509Certificate2.CreateFromEncryptedPemFile Método

Definição

Cria um certificado X509 a partir do conteúdo do arquivo de um certificado codificado por PEM do RFC 7468 e da chave privada protegida por senha.

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

Parâmetros

certPemFilePath
String

O caminho do certificado X509 codificado por PEM.

password
ReadOnlySpan<Char>

A senha do PEM criptografado.

keyPemFilePath
String

Se especificado, o caminho da chave privada codificada por PEM protegida por senha. Se não for especificado, o arquivo certPemFilePath será usado para carregar a chave privada.

Retornos

Um novo certificado com a chave privada.

Atributos

Exceções

O conteúdo do caminho de arquivo em certPemFilePath não contém um certificado codificado por PEM ou está malformado.

- ou -

O conteúdo do caminho do arquivo em keyPemFilePath não contém uma chave privada codificada por PEM e protegida por senha ou está malformado.

- ou -

O conteúdo do caminho do arquivo em keyPemFilePath contém uma chave que não corresponde à chave pública do certificado.

- ou -

O certificado usa um algoritmo de chave pública desconhecido.

- ou -

A senha especificada para a chave privada está incorreta.

certPemFilePath é null.

Comentários

Consulte ReadAllText(String) para obter documentação adicional sobre exceções que podem ser geradas.

As chaves codificadas em PEM protegidas por senha sempre devem ter o rótulo PEM "ENCRYPTED PRIVATE KEY".

Os itens codificados em PEM que têm um rótulo diferente são ignorados.

Certificados e chaves codificados em PEM combinados não exigem uma ordem específica. Para o certificado, o primeiro certificado com um rótulo CERTIFICATE é carregado. Para a chave privada, a primeira chave privada com o rótulo "ENCRYPTED PRIVATE KEY" é carregada. Cenários mais avançados para carregar certificados e chaves privadas podem aproveitar PemEncoding para enumerar valores codificados em PEM e aplicar qualquer comportamento de carregamento personalizado.

Para chaves codificadas por PEM sem senha, use CreateFromPemFile(String, String).

Aplica-se a