X509Certificate2.CreateFromEncryptedPem Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Создает новый сертификат X.509 на основе содержимого сертификата RFC 7468 в кодировке PEM и защищенный паролем закрытый ключ.
public:
static System::Security::Cryptography::X509Certificates::X509Certificate2 ^ CreateFromEncryptedPem(ReadOnlySpan<char> certPem, ReadOnlySpan<char> keyPem, ReadOnlySpan<char> password);
public static System.Security.Cryptography.X509Certificates.X509Certificate2 CreateFromEncryptedPem (ReadOnlySpan<char> certPem, ReadOnlySpan<char> keyPem, ReadOnlySpan<char> password);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public static System.Security.Cryptography.X509Certificates.X509Certificate2 CreateFromEncryptedPem (ReadOnlySpan<char> certPem, ReadOnlySpan<char> keyPem, ReadOnlySpan<char> password);
static member CreateFromEncryptedPem : ReadOnlySpan<char> * ReadOnlySpan<char> * ReadOnlySpan<char> -> System.Security.Cryptography.X509Certificates.X509Certificate2
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
static member CreateFromEncryptedPem : ReadOnlySpan<char> * ReadOnlySpan<char> * ReadOnlySpan<char> -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Shared Function CreateFromEncryptedPem (certPem As ReadOnlySpan(Of Char), keyPem As ReadOnlySpan(Of Char), password As ReadOnlySpan(Of Char)) As X509Certificate2
Параметры
- certPem
- ReadOnlySpan<Char>
Текст сертификата X.509 в кодировке PEM.
- keyPem
- ReadOnlySpan<Char>
Текст защищенного паролем закрытого ключа в кодировке PEM.
- password
- ReadOnlySpan<Char>
Пароль для зашифрованного файла PEM.
Возвращаемое значение
Новый сертификат с закрытым ключом.
- Атрибуты
Исключения
Содержимое certPem
не содержит сертификат в кодировке PEM или неправильно сформирован.
-или-
Содержимое keyPem
не содержит защищенный паролем закрытый ключ в кодировке PEM или имеет неправильный формат.
-или-
Содержимое keyPem
содержит ключ, который не соответствует открытому ключу в сертификате.
-или-
Сертификат использует алгоритм неизвестного открытого ключа.
-или-
Пароль, указанный для закрытого ключа, неправильный.
Комментарии
Ключи, защищенные паролем в кодировке PEM, всегда должны иметь метку PEM "ENCRYPTED PRIVATE KEY".
Элементы в кодировке PEM, имеющие другую метку, игнорируются.
Если сертификат в кодировке PEM и закрытый ключ находятся в одном тексте, используйте одну и ту же строку для обоих certPem
, keyPem
например CreateFromEncryptedPem(combinedCertAndKey, combinedCertAndKey, theKeyPassword);
. Объединенные сертификаты и ключи в кодировке PEM не требуют определенного порядка. Для сертификата загружается первый сертификат с меткой CERTIFICATE. Для закрытого ключа загружается первый закрытый ключ с меткой ENCRYPTED PRIVATE KEY. Более сложные сценарии загрузки сертификатов и закрытых ключей могут использовать PemEncoding для перечисления значений в кодировке PEM и применения любого пользовательского поведения загрузки.
Для ключей с кодировкой PEM без пароля используйте CreateFromPem(ReadOnlySpan<Char>, ReadOnlySpan<Char>).