X509Certificate2.CreateFromEncryptedPemFile 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
用 RFC 7468 PEM 编码的证书的文件内容和受密码保护的私钥创建新的 X509 证书。
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
参数
- certPemFilePath
- String
PEM 编码的 X509 证书的路径。
- password
- ReadOnlySpan<Char>
加密 PEM 的密码。
- keyPemFilePath
- String
如已指定,则为受密码保护的 PEM 编码的私钥的路径。
如果未指定,则将使用 certPemFilePath
文件来加载私钥。
返回
带私钥的新证书。
- 属性
例外
certPemFilePath
的文件路径的内容不包含 PEM 编码的证书,或者格式不正确。
或
keyPemFilePath
文件路径的内容不包含受密码保护的 PEM 编码的私钥,或者格式不正确。
或
keyPemFilePath
的文件路径的内容所包含的密钥与证书中的公钥不匹配。
或
证书使用未知公钥算法。
或
为私钥指定的密码不正确。
certPemFilePath
为 null
。
注解
有关可引发的异常的其他文档,请参阅 ReadAllText(String) 。
受密码保护的 PEM 编码密钥应始终具有 PEM 标签“ENCRYPTED PRIVATE KEY”。
忽略具有不同标签的 PEM 编码项。
组合 PEM 编码的证书和密钥不需要特定顺序。 对于证书,将加载具有 CERTIFICATE 标签的第一个证书。 对于私钥,将加载标签为“ENCRYPTED PRIVATE KEY”的第一个私钥。 加载证书和私钥的更高级方案可以利用 PemEncoding 枚举 PEM 编码的值并应用任何自定义加载行为。
对于没有密码的 PEM 编码密钥,请使用 CreateFromPemFile(String, String)。