CreateCustomCertificate - 頒發自訂認證

更新時間:
Copy as MD

使用指定的認證主體名稱、認證主題別名、密鑰用法、擴充金鑰使用方法頒發數位憑證

介面說明

預設從 CSR 中擷取認證主體名稱頒發認證。當指定了認證主體名稱時,CSR 中的認證主體名稱將失效,即使用指定的認證主體名稱頒發認證。

必鬚根據應用情境指定密鑰用法或擴充金鑰使用方法。以下是常見應用情境的應用樣本:

  • 服務端認證認證

密鑰用法:digitalSignature、keyEncipherment

擴充金鑰使用方法:serverAuth

  • 用戶端認證認證

密鑰用法:digitalSignature、keyEncipherment

擴充金鑰使用方法:clientAuth

  • mTLS 雙向認證認證

密鑰用法:digitalSignature、keyEncipherment

擴充金鑰使用方法:serverAuth、clientAuth

  • 郵件簽署憑證

密鑰用法:digitalSignature、contentCommitment

擴充金鑰使用方法:emailProtection

注意:合規 CA 由第三方權威機構管理,不支援此介面。

調試

您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。

調試

授權資訊

下表是API對應的授權資訊,可以在RAM權限原則語句的Action元素中使用,用來給RAM使用者或RAM角色授予調用此API的許可權。具體說明如下:

  • 操作:是指具體的許可權點。

  • 存取層級:是指每個操作的存取層級,取值為寫入(Write)、讀取(Read)或列出(List)。

  • 資源類型:是指操作中支援授權的資源類型。具體說明如下:

    • 對於必選的資源類型,用前面加 * 表示。

    • 對於不支援資源級授權的操作,用全部資源表示。

  • 條件關鍵字:是指雲產品自身定義的條件關鍵字。

  • 關聯操作:是指成功執行操作所需要的其他許可權。操作者必須同時具備關聯操作的許可權,操作才能成功。

操作

存取層級

資源類型

條件關鍵字

關聯操作

yundun-cert:CreateCustomCertificate

create

*全部資源

*

請求參數

名稱

類型

必填

描述

樣本值

ParentIdentifier

string

CA 憑證識別碼。

1ed4068c-6f1b-6deb-8e32-3f8439a851cb

Csr

string

CSR 內容。您可以通過 OpenSSL 工具或者 Keytool 工具產生 CSR。更多資訊,請參見如何製作 CSR 檔案

-----BEGIN CERTIFICATE REQUEST----- MIIBczCCARgCAQAwgYoxFDASBgNVBAMMC2FsaXl1bi50ZXN0MQ0wCwYDVQQ ... ... ... vbIgMQIhAKHDWD6/WAMbtezAt4bysJ/BZIDz1jPWuUR5GV4TJ/mS -----END CERTIFICATE REQUEST-----

Validity

string

認證有效期間。不可超過執行個體有效期間。支援使用相對時間和絕對時間。

相對時間:支援單位年、月、日。

  • 年 - y

  • 月 - m

  • 日 - d

絕對時間:使用 GMT 時間。格式:yyyy-MM-dd'T'HH:mm:ss'Z'

  • 指定結束時間 - $NotAfter

  • 指定開始時間和結束時間 - $NotBefore/$NotAfter

相對時間: ● 1y ● 3m ● 7d 絕對時間: ● 2006-01-02T15:04:05Z ● 2006-01-02T15:04:05Z/2023-03-09T17:48:13Z

ApiPassthrough

object

透傳參數。調用樣本: { "apiPassthrough": { "extensions": { "keyUsage": { "digitalSignature": true, "keyEncipherment": true }, "extendedKeyUsages": ["serverAuth", "clientAuth"], "subjectAlternativeNames": [ {"type": "dNSName", "value": "www.example.com"}, {"type": "dNSName", "value": "example.com"}, {"type": "iPAddress", "value": "192.168.1.1"} ], "criticals": ["ExtendedKeyUsages"] } } }

Subject

object

認證主體名稱。

Country

string

國家代碼。使用 ISO 3166-1 的二位國家代碼。參考 ISO

CN

State

string

CA 憑證關聯的組織機構所在省份或州的名稱。

浙江省

Locality

string

組織機構所在城市的名稱。支援使用中文、英文字元等。

杭州市

Organization

string

組織機構名稱。

XXX公司

OrganizationUnit

string

組織機構下部門或分支的名稱。

XXX部門

CommonName

string

認證使用者的通用名稱。

張三

CustomAttributes

array<object>

自訂認證的 Subject 屬性。

object

自訂認證的 Subject 屬性。

ObjectIdentifier

string

自訂屬性索引值,需符合行業標準。如:

  • 2.5.4.6:國家代碼

  • 2.5.4.10:組織

  • 2.5.4.11:組織單位名稱

  • 2.5.4.12:職位

  • 2.5.4.3:通用名稱

  • 2.5.4.9:街道

  • 2.5.4.5:序號名稱

  • 2.5.4.7:地區

  • 2.5.4.8:省市

  • 1.3.6.1.4.1.37244.1.1:Matter 認證 - 節點 ID

  • 1.3.6.1.4.1.37244.1.5:Matter 認證 - 結構 ID

  • 1.3.6.1.4.1.37244.2.1:Matter 認證供應商 ID (VID)

  • 1.3.6.1.4.1.37244.2.2:Matter 認證產品識別碼 (PID)

2.5.4.3

Value

string

自訂屬性屬性值。

Aliyun

Extensions

object

認證擴充項。

KeyUsage

object

密鑰用法。

DigitalSignature

boolean

數位簽章。允許使用認證私密金鑰進行數位簽章,允許使用認證公開金鑰驗證數位簽章。

true

ContentCommitment

boolean

內容承諾(不可否認) 。原名稱 NonRepudiation。允許認證密鑰用於內容承諾。

false

NonRepudiation

boolean

抗抵賴(與 contentCommitment 等價)。X.509 標準中已更名為 ContentCommitment。

false

KeyEncipherment

boolean

祕密金鑰加密。允許認證祕密金鑰加密保護其他密鑰。

false

DataEncipherment

boolean

資料加密。

false

KeyAgreement

boolean

密鑰協商。

false

EncipherOnly

boolean

在 KeyAgreement 為 true 時,用於標記該認證密鑰只能用於加密。

false

DecipherOnly

boolean

在 KeyAgreement 為 true 時,用於標記該認證密鑰只能用於解密。

false

ExtendedKeyUsages

array

擴充金鑰使用方法。類型:List,支援以下預定義名稱和自訂 OID:

string

允許使用以下值:

  • any - 不限制

  • serverAuth - 伺服器認證

  • clientAuth - 用戶端認證

  • codeSigning - 程式碼簽署

  • emailProtection - 郵件保護

  • timeStamping - 時間戳記

  • OCSPSigning - OCSP 簽名

  • 其他擴充金鑰使用方法 OID - 作為自訂 OID 解析,如 "1.3.6.1.5.5.7.3.9"

1.3.6.1.4.1.311.20.2.2

SubjectAlternativeNames

array<object>

主題備用名稱 (SAN)。類型:List<Extensions.SubjectAlternativeName>,每項包含 type(GeneralNameType 枚舉)和 value(字串)。

object

認證主體別名。

Type

string

允許使用以下值:

  • otherName - 以 # 開頭表示 hex-encoded ASN1,否則為 UTF8String

  • rfc822Name - Email 地址

  • dNSName - 網域名稱

  • directoryName - X.500 DN

  • uniformResourceIdentifier - 統一資源識別項(URI)

  • iPAddress - IP 位址

  • registeredID - OID

dNSName

Value

string

符合 Type 定義的值。

  • otherName:以 # 開頭表示 hex-encoded ASN1,否則為 UTF8String。 otherName 特殊處理:值以 # 開頭 → 去掉 #,hex 解碼為 ASN1 結構(ASN1Primitive.fromByteArray)

  • 否則 → 封裝為 DERUTF8String

  • rfc822Name: Email 地址,如 user@example.com

  • dNSName:網域名稱,如 www.example.com

  • directoryName: X.500 DN,如 CN=Test,O=Org

  • uniformResourceIdentifier:URI,如 https://example.com

  • iPAddress:IP 位址,如 192.168.1.1

  • registeredID:OID,如 1.2.3.4

rfc822Name: example.aliyundoc.com dNSName: learn.aliyundoc.com uniformResourceIdentifier: acs:ecs:regionid:15619224785*****:instance/i-bp1bzvz55uz27hf***** iPAddress: 127.0.0.1

Criticals

array

控制擴充的 critical 標記。如果是必要參數,則 criticals 列表中包含參數名。

string

必要參數的參數名,如 ExtendedKeyUsages。

ExtendedKeyUsages

SerialNumber

string

自訂認證的序號(必須是長整型)。

16889526086333

Immediately

integer

立即擷取認證。

  • 0 - 非同步頒發認證。

  • 1 - 立即頒發認證。

  • 2 - 立即頒發認證並返回 CA 憑證鏈。

0

EnableCrl

integer

是否包含 CRL 地址

  • 0 - 否

  • 1 - 是

1

Tags

array<object>

標籤列表。

object

標籤列表。

Key

string

標籤鍵。

testKey

Value

string

標籤值。

1

ResourceGroupId

string

資源群組 ID。此 ID 可通過調用 ListResources 介面擷取。

rg-aek****wia

customIdentifier

string

使用者自訂標識。

XXX068c-6f1b-6deb-8e32-3f8439a8XXX

返回參數

名稱

類型

描述

樣本值

object

OpenApiResponseV1

Identifier

string

認證唯一標識。

160ae6bb538d538c70c01f81dcf2****

Certificate

string

認證內容。 Immediately 為 1 或 2 時返回。

-----BEGIN CERTIFICATE----- MIIEkjCCA3qgAwIBAgIQCgFBQgAAAVOFc2oLheynCDANBgkqhkiG9w0BAQsFADA/ ... ... ... KOqkqm57TH2H3eDJAkSnh6/DNFu0Qg== -----END CERTIFICATE-----

CertificateChain

string

CA 憑證鏈。 Immediately 為 2 時返回。

-----BEGIN CERTIFICATE----- MIIBfzCCATGgAwIBAgIUfI5kSdcO2S0+LkpdL3b2VUJG10YwBQYDK2VwMDUxCzAJ ... ... ... ZYYG -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIBczCCARgCAQAwgYoxFDASBgNVBAMMC2FsaXl1bi50ZXN0MQ0wCwYDVQQ ... ... ... KL5cUmF -----END CERTIFICATE-----

SerialNumber

string

認證序號。 Immediately 為 1 或 2 時返回。

084bde9cd233f0ddae33adc438cfbbbd****

RequestId

string

本次調用請求的 ID,是由阿里雲為該請求產生的唯一識別碼,可用於排查和定位問題。

12345678-1234-1234-1234-123456789ABC

樣本

正常返回樣本

JSON格式

{
  "Identifier": "160ae6bb538d538c70c01f81dcf2****",
  "Certificate": "-----BEGIN CERTIFICATE-----\nMIIEkjCCA3qgAwIBAgIQCgFBQgAAAVOFc2oLheynCDANBgkqhkiG9w0BAQsFADA/\n...\n...\n...\nKOqkqm57TH2H3eDJAkSnh6/DNFu0Qg==\n-----END CERTIFICATE-----",
  "CertificateChain": "-----BEGIN CERTIFICATE-----\nMIIBfzCCATGgAwIBAgIUfI5kSdcO2S0+LkpdL3b2VUJG10YwBQYDK2VwMDUxCzAJ\n...\n...\n...\nZYYG\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIBczCCARgCAQAwgYoxFDASBgNVBAMMC2FsaXl1bi50ZXN0MQ0wCwYDVQQ\n...\n...\n...\nKL5cUmF\n-----END CERTIFICATE-----",
  "SerialNumber": "084bde9cd233f0ddae33adc438cfbbbd****",
  "RequestId": "12345678-1234-1234-1234-123456789ABC"
}

錯誤碼

訪問錯誤中心查看更多錯誤碼。

變更歷史

更多資訊,參考變更詳情