共用方式為


CertificateRequest.Create 方法

定義

多載

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

使用簽發者指定的憑證,利用建立的主體、金鑰和選用延伸模組建立憑證。

Create(X509Certificate2, DateTimeOffset, DateTimeOffset, ReadOnlySpan<Byte>)

使用所提供的憑證作為簽發者,利用已建立的主體、金鑰與選擇性的延伸模組建立憑證。

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

簽署目前的憑證要求以建立鏈結或自我簽署的憑證。

Create(X500DistinguishedName, X509SignatureGenerator, DateTimeOffset, DateTimeOffset, ReadOnlySpan<Byte>)

簽署目前的憑證要求以建立鏈結簽署或自我簽署憑證。

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

使用簽發者指定的憑證,利用建立的主體、金鑰和選用延伸模組建立憑證。

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

參數

issuerCertificate
X509Certificate2

X509Certificate2 執行個體,代表發行憑證授權單位 (CA)。

notBefore
DateTimeOffset

此憑證被視為有效時的最舊日期和時間。 一般是 UtcNow 加減幾秒。

notAfter
DateTimeOffset

此憑證不再被視為有效時的日期和時間。

serialNumber
Byte[]

新憑證使用的序號。 每個簽發者的這個值都應該是唯一的。 值會解譯為任意大小的不帶正負號整數,以位元組由大到小排序。 RFC 3280 (英文) 建議將它限制在 20 個位元組或以內。

傳回

X509Certificate2

具有指定之值的 X509Certificate2 物件。 傳回的物件不會對 HasPrivateKey 進行判斷提示。

例外狀況

issuerCertificatenull

issuerCertificate 不包含私密金鑰。

-或-

無法判斷 issuerCertificate 所代表的簽署金鑰類型。

-或-

notAfter 代表早於 notBefore 發生的日期和時間。

-或-

serialNumber 的長度為零或 null

-或-

issuerCertificate 的金鑰演算法與要求憑證的金鑰演算法不同。

-或-

issuerCertificateHasPrivateKey 值為 false

issuerCertificate 是 RSA 憑證,且目前的物件是使用不接受 padding 參數的建構函式所建立。

備註

此方法不支援使用 MD5 或 SHA-1 作為憑證簽章的雜湊演算法。 如果您需要以 MD5 或 SHA-1 為基礎的憑證簽章,您必須實作自訂 X509SignatureGenerator 並呼叫 Create(X500DistinguishedName, X509SignatureGenerator, DateTimeOffset, DateTimeOffset, Byte[])

適用於

Create(X509Certificate2, DateTimeOffset, DateTimeOffset, ReadOnlySpan<Byte>)

使用所提供的憑證作為簽發者,利用已建立的主體、金鑰與選擇性的延伸模組建立憑證。

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

參數

issuerCertificate
X509Certificate2

X509Certificate2 執行個體,代表發行憑證授權單位 (CA)。

notBefore
DateTimeOffset

此憑證可視為有效時的最舊日期和時間。 一般是 UtcNow 加減幾秒。

notAfter
DateTimeOffset

此憑證不再有效的日期和時間。

serialNumber
ReadOnlySpan<Byte>

新憑證使用的序號。 每個簽發者的這個值都應該是唯一的。 值會解譯為以位元組由大到小排序的不帶正負號 (大) 的整數。

傳回

X509Certificate2

具有指定值的憑證。 傳回的物件不會判斷提示 HasPrivateKey

例外狀況

issuerCertificatenull

issuerCertificateHasPrivateKey 值為 false

無法判斷 issuerCertificate 代表的簽署金鑰類型。

notAfter 表示早於 notBefore 的日期和時間。

serialNumber 的長度為 0。

issuerCertificate 的金鑰演算法與要求憑證的金鑰演算法不同。

issuerCertificate 是 RSA 憑證,且此物件是透過不接受 RSASignaturePadding 值的建構函式所建立。

適用於

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

簽署目前的憑證要求以建立鏈結或自我簽署的憑證。

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

參數

issuerName
X500DistinguishedName

簽發者的 X500DistinguishedName

generator
X509SignatureGenerator

X509SignatureGenerator 物件,代表發行憑證授權單位。

notBefore
DateTimeOffset

此憑證被視為有效時的最舊日期和時間。 一般是 UtcNow 加減幾秒。

notAfter
DateTimeOffset

此憑證不再被視為有效時的日期和時間。

serialNumber
Byte[]

新憑證使用的序號。 每個簽發者的這個值都應該是唯一的。 值會解譯為任意大小的不帶正負號整數,以位元組由大到小排序。 RFC 3280 (英文) 建議將它限制在 20 個位元組或以內。

傳回

X509Certificate2

具有指定之值的 X509Certificate2 物件。 傳回的物件不會對 HasPrivateKey 進行判斷提示。

例外狀況

issuerCertificatenull

-或-

generatornull

notAfter 代表早於 notBefore 發生的日期和時間。

-或-

serialNumber 的長度為零或 null

簽署作業期間發生錯誤。

適用於

Create(X500DistinguishedName, X509SignatureGenerator, DateTimeOffset, DateTimeOffset, ReadOnlySpan<Byte>)

簽署目前的憑證要求以建立鏈結簽署或自我簽署憑證。

public:
 System::Security::Cryptography::X509Certificates::X509Certificate2 ^ Create(System::Security::Cryptography::X509Certificates::X500DistinguishedName ^ issuerName, System::Security::Cryptography::X509Certificates::X509SignatureGenerator ^ generator, DateTimeOffset notBefore, DateTimeOffset notAfter, ReadOnlySpan<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, ReadOnlySpan<byte> serialNumber);
member this.Create : System.Security.Cryptography.X509Certificates.X500DistinguishedName * System.Security.Cryptography.X509Certificates.X509SignatureGenerator * DateTimeOffset * DateTimeOffset * ReadOnlySpan<byte> -> System.Security.Cryptography.X509Certificates.X509Certificate2
Public Function Create (issuerName As X500DistinguishedName, generator As X509SignatureGenerator, notBefore As DateTimeOffset, notAfter As DateTimeOffset, serialNumber As ReadOnlySpan(Of Byte)) As X509Certificate2

參數

issuerName
X500DistinguishedName

簽發者的辨別名稱。

generator
X509SignatureGenerator

發行憑證的授權單位。

notBefore
DateTimeOffset

此憑證可視為有效時的最舊日期和時間。 一般是 UtcNow 加減幾秒。

notAfter
DateTimeOffset

此憑證不再有效的日期和時間。

serialNumber
ReadOnlySpan<Byte>

新憑證使用的序號。 每個簽發者的這個值都應該是唯一的。 值會解譯為以位元組由大到小排序的不帶正負號 (大) 的整數。

傳回

X509Certificate2

具有指定值的憑證。 傳回的物件不會判斷提示 HasPrivateKey

例外狀況

issuerNamegeneratornull

notAfter 表示早於 notBefore 的日期和時間。

-或-

serialNumber 的長度為 0。

簽署作業期間發生錯誤。

適用於