X509Certificate2.CreateFromPem 方法

定义

从 RFC 7468 PEM 编码证书的内容创建新的 X509 证书。

重载

名称 说明
CreateFromPem(ReadOnlySpan<Char>)

从 RFC 7468 PEM 编码证书的内容创建新的 X509 证书。

CreateFromPem(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

从 RFC 7468 PEM 编码的证书和私钥的内容创建新的 X509 证书。

CreateFromPem(ReadOnlySpan<Char>)

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

从 RFC 7468 PEM 编码证书的内容创建新的 X509 证书。

public:
 static System::Security::Cryptography::X509Certificates::X509Certificate2 ^ CreateFromPem(ReadOnlySpan<char> certPem);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public static System.Security.Cryptography.X509Certificates.X509Certificate2 CreateFromPem(ReadOnlySpan<char> certPem);
public static System.Security.Cryptography.X509Certificates.X509Certificate2 CreateFromPem(ReadOnlySpan<char> certPem);
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
static member CreateFromPem : ReadOnlySpan<char> -> System.Security.Cryptography.X509Certificates.X509Certificate2
static member CreateFromPem : ReadOnlySpan<char> -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Shared Function CreateFromPem (certPem As ReadOnlySpan(Of Char)) As X509Certificate2

参数

certPem
ReadOnlySpan<Char>

PEM 编码的 X509 证书的文本。

返回

新的 X509 证书。

属性

例外

不包含 PEM 编码的证书的内容 certPem ,或者格式不正确。

注解

这会加载使用 CERTIFICATE 标签找到的第一个格式良好的 PEM。

对于具有私钥的 PEM 编码证书,请使用 CreateFromPem(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

对于文件中的 PEM 编码证书,请使用 X509Certificate2(String)

适用于

CreateFromPem(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs
Source:
X509Certificate2.cs

从 RFC 7468 PEM 编码的证书和私钥的内容创建新的 X509 证书。

public:
 static System::Security::Cryptography::X509Certificates::X509Certificate2 ^ CreateFromPem(ReadOnlySpan<char> certPem, ReadOnlySpan<char> keyPem);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public static System.Security.Cryptography.X509Certificates.X509Certificate2 CreateFromPem(ReadOnlySpan<char> certPem, ReadOnlySpan<char> keyPem);
public static System.Security.Cryptography.X509Certificates.X509Certificate2 CreateFromPem(ReadOnlySpan<char> certPem, ReadOnlySpan<char> keyPem);
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
static member CreateFromPem : ReadOnlySpan<char> * ReadOnlySpan<char> -> System.Security.Cryptography.X509Certificates.X509Certificate2
static member CreateFromPem : ReadOnlySpan<char> * ReadOnlySpan<char> -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Shared Function CreateFromPem (certPem As ReadOnlySpan(Of Char), keyPem As ReadOnlySpan(Of Char)) As X509Certificate2

参数

certPem
ReadOnlySpan<Char>

PEM 编码的 X509 证书的文本。

keyPem
ReadOnlySpan<Char>

PEM 编码私钥的文本。

返回

具有私钥的新证书。

属性

例外

不包含 PEM 编码的证书的内容 certPem ,或者格式不正确。

-或者-

不包含 PEM 编码的私钥的内容 keyPem ,或者格式不正确。

-或者-

包含的密钥的内容 keyPem 与证书中的公钥不匹配。

-或者-

证书使用未知公钥算法。

注解

证书中的 SubjectPublicKeyInfo 确定私钥接受哪些 PEM 标签。 对于 RSA 证书,接受的私钥 PEM 标签为“RSA 私钥”和“私钥”。 对于 ECDSA 证书,接受的私钥 PEM 标签为“EC 私钥”和“私钥”。 对于 DSA 证书,接受的私钥 PEM 标签为“私钥”。

忽略具有不同标签的 PEM 编码项。

如果 PEM 编码的证书和私钥位于同一文本中,则对两者certPemkeyPem使用相同的字符串,例如, CreateFromPem(combinedCertAndKey, combinedCertAndKey); 组合 PEM 编码的证书和密钥不需要特定顺序。 对于证书,加载包含 CERTIFICATE 标签的第一个证书。 对于私钥,加载具有可接受标签的第一个私钥。 用于加载证书和私钥的更高级方案可以利用 PemEncoding 这些方案枚举 PEM 编码的值并应用任何自定义加载行为。

对于受密码保护的 PEM 编码密钥,请使用 CreateFromEncryptedPem(ReadOnlySpan<Char>, ReadOnlySpan<Char>, ReadOnlySpan<Char>) 指定密码。

适用于