X509Certificate2.CreateFromPemFile(String, String) Метод

Определение

Создает новый сертификат X.509 на основе содержимого файла сертификата RFC 7468 в кодировке PEM и закрытый ключ.

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

Параметры

certPemFilePath
String

Путь для сертификата X.509 в кодировке PEM.

keyPemFilePath
String

Если задать, будет использоваться путь к закрытому ключу в кодировке PEM. Если не задать, для загрузки закрытого ключа будет использоваться файл certPemFilePath.

Возвращаемое значение

Новый сертификат с закрытым ключом.

Атрибуты

Исключения

Содержимое пути к файлу в certPemFilePath не содержит сертификат в кодировке PEM или имеет неправильный формат.

-или-

Содержимое пути к файлу в keyPemFilePath не содержит закрытый ключ в кодировке PEM или имеет неправильный формат.

-или-

Содержимое пути к файлу в keyPemFilePath содержит ключ, который не соответствует открытому ключу в сертификате.

-или-

Сертификат использует неизвестный алгоритм открытого ключа.

certPemFilePath имеет значение null.

Комментарии

Дополнительные сведения об исключениях, которые могут возникать, см ReadAllText(String) . в этой документации.

SubjectPublicKeyInfo из сертификата определяет, какие метки PEM принимаются для закрытого ключа. Для сертификатов RSA допустимыми метками PEM закрытого ключа являются "ЗАКРЫТЫЙ КЛЮЧ RSA" и "ЗАКРЫТЫЙ КЛЮЧ". Для сертификатов ECDSA допустимыми метками PEM закрытого ключа являются "EC PRIVATE KEY" и "PRIVATE KEY". Для сертификатов DSA принятой меткой PEM закрытого ключа является "PRIVATE KEY".

Элементы в кодировке PEM, имеющие другую метку, игнорируются.

Объединенные сертификаты и ключи в кодировке PEM не требуют определенного порядка. Для сертификата загружается первый сертификат с меткой CERTIFICATE. Для закрытого ключа загружается первый закрытый ключ с допустимой меткой. В более сложных сценариях загрузки сертификатов и закрытых ключей можно использовать для PemEncoding перечисления значений в кодировке PEM и применения любого пользовательского поведения загрузки.

Для защищенных паролем ключей в кодировке PEM используйте , CreateFromEncryptedPemFile(String, ReadOnlySpan<Char>, String) чтобы указать пароль.

Применяется к