語言

CertificateRequest.Create 方法

定義

使用已建立的主旨、金鑰及可選擴展名,並由指定的發行者憑證簽署。

多載

名稱 Description
Create(X500DistinguishedName, X509SignatureGenerator, DateTimeOffset, DateTimeOffset, ReadOnlySpan<Byte>)

簽署目前的憑證請求以建立鏈式或自簽式憑證。

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

簽署目前憑證請求以建立鏈簽名或自簽憑證。

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

使用已建立的主體、金鑰及可選擴展,並以所提供的憑證作為發行者建立憑證。

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

使用已建立的主體、金鑰及可選擴充功能,並以指定的憑證作為發行者建立憑證。

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

來源:
CertificateRequest.cs
來源:
CertificateRequest.cs
來源:
CertificateRequest.cs
來源:
CertificateRequest.cs
來源:
CertificateRequest.cs

簽署目前的憑證請求以建立鏈式或自簽式憑證。

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>

新證書的序號。 這個數值應該是每個發行商唯一的。 該值被解釋為大端序中無符號(大)整數。

傳回

一份包含指定數值的證書。 返回的物件不會斷 HasPrivateKey言 。

例外狀況

issuerName 或 generator 為 null。

notAfter 代表在 之前 notBefore的日期和時間。

-或

serialNumber 長度為 0。

簽署操作過程中發生錯誤。

簽章產生器需要一個非預設值, HashAlgorithm但這個物件是在未提供預設值的情況下建立的。

適用於

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

來源:
CertificateRequest.cs
來源:
CertificateRequest.cs
來源:
CertificateRequest.cs
來源:
CertificateRequest.cs
來源:
CertificateRequest.cs

簽署目前憑證請求以建立鏈簽名或自簽憑證。

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 具有指定值的物件。 返回的物件不會斷 HasPrivateKey言 。

例外狀況

issuerName 是 null。

-或-

generator 是 null。

notAfter 代表發生在 notBefore之前的日期和時間。

-或-

serialNumber 是零長度或 null。

簽章操作過程中會發生錯誤。

簽章產生器需要一個非預設值, HashAlgorithm但這個物件是在未提供預設值的情況下建立的。

適用於

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

來源:
CertificateRequest.cs
來源:
CertificateRequest.cs
來源:
CertificateRequest.cs
來源:
CertificateRequest.cs
來源:
CertificateRequest.cs

使用已建立的主體、金鑰及可選擴展,並以所提供的憑證作為發行者建立憑證。

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

一個代表發行憑證授權中心(CA)的 X509Certificate2 實例。

notBefore
DateTimeOffset

此證明被視為有效的最早日期與時間。 通常, UtcNow正負幾秒鐘。

notAfter
DateTimeOffset

該證明不再被視為有效的日期與時間。

serialNumber
ReadOnlySpan<Byte>

新證書的序號。 這個數值應該是每個發行商唯一的。 該值被解釋為大端序中無符號(大)整數。

傳回

一份包含指定數值的證書。 返回的物件不會斷 HasPrivateKey言 。

例外狀況

issuerCertificate 是 null。

HasPrivateKey的issuerCertificate值為 false。

無法確定所 issuerCertificate 代表的簽章金鑰類型。

notAfter 代表在 之前 notBefore的日期和時間。

serialNumber 長度為 0。

issuerCertificate 擁有與請求憑證不同的金鑰演算法。

issuerCertificate 是 RSA 憑證,而這個物件是透過一個不接受 RSASignaturePadding 值的建構子建立的。

適用於

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

來源:
CertificateRequest.cs
來源:
CertificateRequest.cs
來源:
CertificateRequest.cs
來源:
CertificateRequest.cs
來源:
CertificateRequest.cs

使用已建立的主體、金鑰及可選擴充功能,並以指定的憑證作為發行者建立憑證。

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 具有指定值的物件。 返回的物件不會斷 HasPrivateKey言 。

例外狀況

issuerCertificate 是 null。

它 issuerCertificate 沒有私鑰。

-或-

無法確定所 issuerCertificate 代表的簽章金鑰類型。

-或-

notAfter 代表發生在 notBefore之前的日期和時間。

-或-

serialNumber 是零長度或 null。

-或-

issuerCertificate 擁有與請求憑證不同的金鑰演算法。

-或-

HasPrivateKey的issuerCertificate值為 false。

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

HashAlgorithm房產價值沒有被支持。

備註

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

適用於