创建CA
功能介绍
创建CA,分以下三种情况:
-
创建根CA,根据参数介绍中,填写必选值;
-
创建从属CA,并需要直接激活该证书,根据参数介绍中,填写必选值;
-
创建从属CA,不需要直接激活该证书,请求body中只需要缺少此三个参数之一即可:issuer_id、signature_algorithm、validity。
URI
POST /v1/private-certificate-authorities
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
是 |
String |
用户token,通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
type |
是 |
String |
创建的CA类型。
|
distinguished_name |
是 |
DistinguishedName object |
证书名称配置,详情请参见DistinguishedName字段数据结构说明。 |
key_algorithm |
是 |
String |
密钥算法,可选值如下:
|
validity |
否 |
Validity object |
证书有效期,分以下三种情况:
说明:
详情请参见Validity字段数据结构说明。 |
issuer_id |
否 |
String |
父CA证书ID,分以下三种情况:
最小长度:36 最大长度:36 |
path_length |
否 |
Integer |
CA证书路径长度,分以下三种情况:
最小值:0 最大值:6 |
signature_algorithm |
否 |
String |
签名哈希算法。
|
key_usages |
否 |
Array of strings |
密钥用法,具体标准参见RFC 5280中:4.2.1.3节。
说明:
缺省值如下:
|
crl_configuration |
否 |
CrlConfiguration object |
证书CRL配置,详情请参见CrlConfiguration字段数据结构说明。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
common_name |
是 |
String |
证书通用名称(CN)。 最小长度:1 最大长度:64 |
country |
是 |
String |
国家编码,需符合正则"[A-Za-z]{2}"。 最小长度:2 最大长度:2 |
state |
是 |
String |
省市名称。 最小长度:1 最大长度:128 |
locality |
是 |
String |
地区名称。 最小长度:1 最大长度:128 |
organization |
是 |
String |
组织名称。 最小长度:1 最大长度:64 |
organizational_unit |
是 |
String |
组织单元名称。 最小长度:1 最大长度:64 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
type |
是 |
String |
有效期类型,为必填值:
|
value |
是 |
Integer |
证书有效期值,与type对应的类型值,换算成年需满足以下规则:
|
start_from |
否 |
Integer |
起始时间,为可选值:
|
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
enabled |
是 |
Boolean |
是否启用CRL发布功能。
|
crl_name |
否 |
String |
吊销列表文件名称。
说明:
若用户不指定,系统将默认采用当前证书的父CA ID。 |
obs_bucket_name |
否 |
String |
OBS桶名称。
说明:
当需要启用CRL发布功能:
|
valid_days |
否 |
Integer |
CRL更新周期,单位为"天"。当启用CRL发布功能,为必填项。 最小值:7 最大值:30 |
响应参数
状态码: 200
参数 |
参数类型 |
描述 |
---|---|---|
ca_id |
String |
当前签发的CA证书ID。 最小长度:36 最大长度:36 |
状态码: 400
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误请求返回的错误码。 最小长度:3 最大长度:36 |
error_msg |
String |
错误请求返回的错误信息。 最小长度:0 最大长度:1024 |
状态码: 401
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误请求返回的错误码。 最小长度:3 最大长度:36 |
error_msg |
String |
错误请求返回的错误信息。 最小长度:0 最大长度:1024 |
状态码: 403
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误请求返回的错误码。 最小长度:3 最大长度:36 |
error_msg |
String |
错误请求返回的错误信息。 最小长度:0 最大长度:1024 |
状态码: 404
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误请求返回的错误码。 最小长度:3 最大长度:36 |
error_msg |
String |
错误请求返回的错误信息。 最小长度:0 最大长度:1024 |
状态码: 500
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误请求返回的错误码。 最小长度:3 最大长度:36 |
error_msg |
String |
错误请求返回的错误信息。 最小长度:0 最大长度:1024 |
请求示例
创建CA证书,请求头中的X-Auth-Token字段需要填写token,且该token需要具有本API的访问权限。
POST https://ccm.ae-ad-1.myhuaweicloud.com/v1/private-certificate-authorities { "type" : "ROOT", "key_algorithm" : "RSA4096", "signature_algorithm" : "SHA512", "distinguished_name" : { "country" : "your country abbreviation", "state" : "your state", "locality" : "your locality", "organization" : "your organization", "organizational_unit" : "your unit", "common_name" : "your CN" }, "validity" : { "type" : "YEAR", "value" : 3 }, "crl_configuration" : { "enabled" : false, "obs_bucket_name" : "demoBucket", "valid_days" : 8 } }
响应示例
状态码: 200
请求已成功
{ "ca_id" : "66504812-fedc-414a-9b7c-4c1836398524" }
状态码: 400
请求参数有误。
{ "error_code" : "PCA.XXX", "error_msg" : "XXX" }
状态码: 401
被请求的页面需要鉴权。
{ "error_code" : "PCA.XXX", "error_msg" : "XXX" }
状态码: 403
认证失败。
{ "error_code" : "PCA.XXX", "error_msg" : "XXX" }
状态码: 404
资源不存在或资源未找到。
{ "error_code" : "PCA.XXX", "error_msg" : "XXX" }
状态码: 500
服务内部错误。
{ "error_code" : "PCA.XXX", "error_msg" : "XXX" }
状态码
状态码 |
描述 |
---|---|
200 |
请求已成功 |
400 |
请求参数有误。 |
401 |
被请求的页面需要鉴权。 |
403 |
认证失败。 |
404 |
资源不存在或资源未找到。 |
500 |
服务内部错误。 |
错误码
请参见错误码。