X509Certificate2.CreateFromPemFile(String, String) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Cria um certificado X509 a partir do conteúdo do arquivo de um certificado codificado por PEM do RFC 7468 e da chave privada.
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
Parâmetros
- certPemFilePath
- String
O caminho do certificado X509 codificado por PEM.
- keyPemFilePath
- String
Se especificado, o caminho da chave privada codificada por PEM.
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 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.
certPemFilePath
é null
.
Comentários
Consulte ReadAllText(String) para obter documentação adicional sobre exceções que podem ser geradas.
O SubjectPublicKeyInfo do certificado determina quais rótulos PEM são aceitos para a chave privada. Para certificados RSA, os rótulos PEM de chave privada aceitos são "RSA PRIVATE KEY" e "PRIVATE KEY". Para certificados ECDSA, os rótulos PEM de chave privada aceitos são "EC PRIVATE KEY" e "PRIVATE KEY". Para certificados DSA, o rótulo PEM de chave privada aceito é "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 um rótulo aceitável é 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 protegidas por senha, use CreateFromEncryptedPemFile(String, ReadOnlySpan<Char>, String) para especificar uma senha.