X509Certificate2.CreateFromPemFile(String, String) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
從 RFC 7468 PEM 編碼憑證與私密金鑰的檔案內容建立新的 X509 憑證。
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
PEM 編碼 X509 憑證的路徑。
- keyPemFilePath
- String
若指定,則為 PEM 編碼私密金鑰的路徑。
若未指定,將會使用 certPemFilePath
檔案來載入私密金鑰。
傳回
含私密金鑰的新憑證。
- 屬性
例外狀況
certPemFilePath
中檔案路徑的內容並不包含 PEM 編碼憑證,或其格式不正確。
-或-
keyPemFilePath
的檔案路徑內容並不包含 PEM 編碼私密金鑰,或其格式不正確。
-或-
keyPemFilePath
的檔案路徑內容包含不符合憑證中公開金鑰的金鑰。
-或-
憑證會使用未知的公鑰演演算法。
certPemFilePath
為 null
。
備註
如需可擲回之例外狀況的其他檔,請參閱 ReadAllText(String) 。
憑證中的 SubjectPublicKeyInfo 會決定私鑰接受哪些 PEM 卷標。 針對 RSA 憑證,接受的私鑰 PEM 標籤為 “RSA PRIVATE KEY” 和 “PRIVATE KEY”。 針對ECDSA 憑證,接受的私鑰 PEM 標籤為「EC 私鑰」和「私鑰」。 對於 DSA 憑證,接受的私鑰 PEM 標籤為「私鑰」。
忽略具有不同標籤的 PEM 編碼專案。
合併的 PEM 編碼憑證和金鑰不需要特定順序。 針對憑證,會載入具有 CERTIFICATE 標籤的第一個憑證。 針對私鑰,會載入具有可接受的標籤的第一個私鑰。 加載憑證和私鑰的更進階案例可以利用 PemEncoding 來列舉 PEM 編碼的值,並套用任何自定義載入行為。
針對受密碼保護的 PEM 編碼金鑰,請使用 CreateFromEncryptedPemFile(String, ReadOnlySpan<Char>, String) 來指定密碼。