X509Certificate2.CreateFromPemFile(String, String) Metoda

Definicja

Tworzy nowy certyfikat X509 na podstawie zawartości pliku certyfikatu zakodowanego w standardzie PEM RFC 7468 i klucza prywatnego.

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

Parametry

certPemFilePath
String

Ścieżka certyfikatu X509 zakodowanego w standardzie PEM.

keyPemFilePath
String

W przypadku określenia ścieżki dla klucza prywatnego zakodowanego za pomocą standardu PEM. Jeśli nie zostanie określona, certPemFilePath plik zostanie użyty do załadowania klucza prywatnego.

Zwraca

Nowy certyfikat z kluczem prywatnym.

Atrybuty

Wyjątki

Zawartość ścieżki pliku w certPemFilePath pliku nie zawiera certyfikatu zakodowanego w formacie PEM lub jest źle sformułowana.

-lub-

Zawartość ścieżki pliku w keyPemFilePath pliku nie zawiera zakodowanego klucza prywatnego PEM lub jest źle sformułowana.

-lub-

Zawartość ścieżki pliku w keyPemFilePath pliku zawiera klucz, który nie jest zgodny z kluczem publicznym w certyfikacie.

-lub-

Certyfikat używa nieznanego algorytmu klucza publicznego.

certPemFilePath to null.

Uwagi

Zobacz ReadAllText(String) dodatkową dokumentację dotyczącą wyjątków, które można zgłosić.

SubjectPublicKeyInfo z certyfikatu określa, jakie etykiety PEM są akceptowane dla klucza prywatnego. W przypadku certyfikatów RSA akceptowane etykiety PEM klucza prywatnego to "RSA PRIVATE KEY" i "KLUCZ PRYWATNY". W przypadku certyfikatów ECDSA akceptowane etykiety PEM klucza prywatnego to "KLUCZ PRYWATNY EC" i "KLUCZ PRYWATNY". W przypadku certyfikatów DSA akceptowana etykieta PEM klucza prywatnego to "KLUCZ PRYWATNY".

Elementy zakodowane w formacie PEM, które mają inną etykietę, są ignorowane.

Połączone certyfikaty i klucze zakodowane za pomocą standardu PEM nie wymagają określonej kolejności. Dla certyfikatu jest ładowany pierwszy certyfikat z etykietą CERTYFIKAT. W przypadku klucza prywatnego jest ładowany pierwszy klucz prywatny z akceptowalną etykietą. Bardziej zaawansowane scenariusze ładowania certyfikatów i kluczy prywatnych mogą być używane PemEncoding do wyliczania wartości zakodowanych za pomocą standardu PEM i stosowania dowolnego niestandardowego zachowania ładowania.

W przypadku kluczy zakodowanych hasłem kluczy zakodowanych za pomocą protokołu PEM użyj polecenia CreateFromEncryptedPemFile(String, ReadOnlySpan<Char>, String) , aby określić hasło.

Dotyczy