CertificateRequest.Create Methode

Definition

Überlädt

Name Beschreibung
Create(X509Certificate2, DateTimeOffset, DateTimeOffset, Byte[])

Erstellt ein Zertifikat mit dem eingerichteten Betreff, Schlüssel und optionalen Erweiterungen mithilfe des angegebenen Zertifikats als Aussteller.

Create(X500DistinguishedName, X509SignatureGenerator, DateTimeOffset, DateTimeOffset, Byte[])

Signiert die aktuelle Zertifikatanforderung, um ein kettensigniertes oder selbstsigniertes Zertifikat zu erstellen.

Create(X509Certificate2, DateTimeOffset, DateTimeOffset, Byte[])

Erstellt ein Zertifikat mit dem eingerichteten Betreff, Schlüssel und optionalen Erweiterungen mithilfe des angegebenen Zertifikats als Aussteller.

public:
 System::Security::Cryptography::X509Certificates::X509Certificate2 ^ Create(System::Security::Cryptography::X509Certificates::X509Certificate2 ^ issuerCertificate, DateTimeOffset notBefore, DateTimeOffset notAfter, cli::array <System::Byte> ^ serialNumber);
public System.Security.Cryptography.X509Certificates.X509Certificate2 Create(System.Security.Cryptography.X509Certificates.X509Certificate2 issuerCertificate, DateTimeOffset notBefore, DateTimeOffset notAfter, byte[] serialNumber);
member this.Create : System.Security.Cryptography.X509Certificates.X509Certificate2 * DateTimeOffset * DateTimeOffset * byte[] -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Function Create (issuerCertificate As X509Certificate2, notBefore As DateTimeOffset, notAfter As DateTimeOffset, serialNumber As Byte()) As X509Certificate2

Parameter

issuerCertificate
X509Certificate2

Eine X509Certificate2 Instanz, die die ausstellende Zertifizierungsstelle (Ca) darstellt.

notBefore
DateTimeOffset

Das älteste Datum und die älteste Uhrzeit, zu der dieses Zertifikat als gültig betrachtet wird. In der Regel UtcNow, plus oder minus ein paar Sekunden.

notAfter
DateTimeOffset

Das Datum und die Uhrzeit, zu dem dieses Zertifikat nicht mehr als gültig betrachtet wird.

serialNumber
Byte[]

Die Seriennummer, die für das neue Zertifikat verwendet werden soll. Dieser Wert sollte pro Aussteller eindeutig sein. Der Wert wird als eine nicht signierte ganze Zahl beliebiger Größe in der Groß-End-Byte-Reihenfolge interpretiert. RFC 3280 empfiehlt, sie auf 20 Bytes oder weniger einzuverketten.

Gibt zurück

Ein X509Certificate2 Objekt mit den angegebenen Werten. Das zurückgegebene Objekt wird nicht bestätigt HasPrivateKey.

Ausnahmen

issuerCertificate ist null.

Der issuerCertificate Schlüssel enthält keinen privaten Schlüssel.

-oder-

Der Typ des dargestellten Signaturschlüssels issuerCertificate konnte nicht bestimmt werden.

-oder-

notAfter stellt ein Datum und eine Uhrzeit dar, die früher als notBefore.

-oder-

serialNumber ist null länge oder null.

-oder-

issuerCertificate hat einen anderen Schlüsselalgorithmus als das angeforderte Zertifikat.

-oder-

Der HasPrivateKey Wert für issuerCertificate ist false.

issuerCertificate ist ein RSA-Zertifikat und das aktuelle Objekt wurde mit einem Konstruktor erstellt, der keinen Parameter akzeptiert padding .

Der HashAlgorithm Eigenschaftswert wird nicht unterstützt.

Hinweise

Diese Methode unterstützt nicht die Verwendung von MD5 oder SHA-1 als Hashalgorithmus für die Zertifikatsignatur. Wenn Sie eine MD5- oder SHA-1-basierte Zertifikatsignatur benötigen, müssen Sie eine benutzerdefinierte X509SignatureGenerator und einen Aufruf Create(X500DistinguishedName, X509SignatureGenerator, DateTimeOffset, DateTimeOffset, Byte[])implementieren.

Gilt für:

Create(X500DistinguishedName, X509SignatureGenerator, DateTimeOffset, DateTimeOffset, Byte[])

Signiert die aktuelle Zertifikatanforderung, um ein kettensigniertes oder selbstsigniertes Zertifikat zu erstellen.

public:
 System::Security::Cryptography::X509Certificates::X509Certificate2 ^ Create(System::Security::Cryptography::X509Certificates::X500DistinguishedName ^ issuerName, System::Security::Cryptography::X509Certificates::X509SignatureGenerator ^ generator, DateTimeOffset notBefore, DateTimeOffset notAfter, cli::array <System::Byte> ^ serialNumber);
public System.Security.Cryptography.X509Certificates.X509Certificate2 Create(System.Security.Cryptography.X509Certificates.X500DistinguishedName issuerName, System.Security.Cryptography.X509Certificates.X509SignatureGenerator generator, DateTimeOffset notBefore, DateTimeOffset notAfter, byte[] serialNumber);
member this.Create : System.Security.Cryptography.X509Certificates.X500DistinguishedName * System.Security.Cryptography.X509Certificates.X509SignatureGenerator * DateTimeOffset * DateTimeOffset * byte[] -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Function Create (issuerName As X500DistinguishedName, generator As X509SignatureGenerator, notBefore As DateTimeOffset, notAfter As DateTimeOffset, serialNumber As Byte()) As X509Certificate2

Parameter

issuerName
X500DistinguishedName

Der X500DistinguishedName für den Aussteller.

generator
X509SignatureGenerator

Ein X509SignatureGenerator Objekt, das die ausstellende Zertifizierungsstelle darstellt.

notBefore
DateTimeOffset

Das älteste Datum und die älteste Uhrzeit, zu der dieses Zertifikat als gültig betrachtet wird. In der Regel UtcNow, plus oder minus ein paar Sekunden.

notAfter
DateTimeOffset

Das Datum und die Uhrzeit, zu dem dieses Zertifikat nicht mehr als gültig betrachtet wird.

serialNumber
Byte[]

Die Seriennummer, die für das neue Zertifikat verwendet werden soll. Dieser Wert sollte pro Aussteller eindeutig sein. Der Wert wird als eine nicht signierte ganze Zahl beliebiger Größe in der Groß-End-Byte-Reihenfolge interpretiert. RFC 3280 empfiehlt, sie auf 20 Bytes oder weniger einzuverketten.

Gibt zurück

Ein X509Certificate2 Objekt mit den angegebenen Werten. Das zurückgegebene Objekt wird nicht bestätigt HasPrivateKey.

Ausnahmen

issuerName ist null.

-oder-

generator ist null.

notAfter stellt ein Datum und eine Uhrzeit dar, die früher als notBefore.

-oder-

serialNumber ist null länge oder null.

Während des Signiervorgangs tritt ein Fehler auf.

Der Signaturgenerator erfordert einen nicht standardmäßigen Wert für HashAlgorithm, aber dieses Objekt wurde ohne angabe erstellt.

Gilt für: