申请证书
功能介绍
申请证书。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
URI
POST /v1/private-certificates
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
是 |
String |
用户token,参见:IAM token获取方法。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
issuer_id |
是 |
String |
父CA证书ID。 |
key_algorithm |
否 |
String |
密钥算法。若用户不输入该字段,默认使用签发CA的密钥算法。可选值如下:
|
signature_algorithm |
否 |
String |
签名哈希算法。若用户不输入该字段,默认使用签发CA的签名哈希算法。可选值如下:
|
distinguished_name |
是 |
CertDistinguishedName object |
证书名称配置,详情请参见CertDistinguishedName字段数据结构说明。 |
validity |
是 |
Validity object |
证书有效期,详情请参见Validity字段数据结构说明。 |
key_usages |
否 |
Array of strings |
密钥用法,具体标准参见RFC 5280中:4.2.1.3节。
|
subject_alternative_names |
否 |
Array of SubjectAlternativeName objects |
主体备用名称,详情请参见SubjectAlternativeName字段数据结构说明。
|
extended_key_usage |
否 |
ExtendedKeyUsage object |
增强型密钥用法,详情请参见ExtendedKeyUsage字段数据结构说明。 |
customized_extension |
否 |
CustomizedExtension object |
自定义扩展信息,详情请参见CustomizedExtension字段数据结构说明。 |
enterprise_project_id |
否 |
String |
企业多项目ID。用户未开通企业多项目时,不需要输入该字段。 用户开通企业多项目时,查询资源可以输入该字段。 若用户不输入该字段,默认查询租户所有有权限的企业多项目下的资源。 此时“enterprise_project_id”取值为“all”。 若用户输入该字段,取值满足以下任一条件. 取值为“all” 取值为“0” 满足正则匹配:“^[0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12}$” |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
common_name |
是 |
String |
证书通用名称(CN),名称只能由"-"、"_"、" "、"."、","、"*"、字母、数字、汉字组成,长度不能超过64位字符。 |
country |
否 |
String |
国家编码,只能由英文组成,长度为2位字符。若不传入,则默认继承父CA对应的值。 |
state |
否 |
String |
省市名称,名称只能由"-"、"_"、" "、"."、","、字母、数字、汉字组成,长度不能超过128位字符。若不传入,则默认继承父CA对应的值。 |
locality |
否 |
String |
地区名称,名称只能由"-"、"_"、" "、"."、","、字母、数字、汉字组成,长度不能超过128位字符。若不传入,则默认继承父CA对应的值。 |
organization |
否 |
String |
组织名称,名称只能由"-"、"_"、" "、"."、","、字母、数字、汉字组成,长度不能超过64位字符。若不传入,则默认继承父CA对应的值。 |
organizational_unit |
否 |
String |
组织单元名称,名称只能由"-"、"_"、" "、"."、","、字母、数字、汉字组成,长度不能超过64位字符。若不传入,则默认继承父CA对应的值。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
type |
是 |
String |
有效期类型,为必填值:
|
value |
是 |
Integer |
证书有效期值,与type对应的类型值,换算成年需满足以下规则:
|
start_from |
否 |
Integer |
起始时间,为可选值:
|
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
type |
是 |
String |
备用名称类型,当前仅支持DNS、IP、EMAIL、URI、UPN。
|
value |
是 |
String |
对应备用名称类型的值。
|
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
server_auth |
否 |
Boolean |
服务器身份验证,OID为:1.3.6.1.5.5.7.3.1。
说明:
服务器证书请启用本增强型密钥用法,默认为false。
|
client_auth |
否 |
Boolean |
客户端身份验证,OID为:1.3.6.1.5.5.7.3.2。
说明:
客户端证书请启用本增强型密钥用法,默认为false。
|
code_signing |
否 |
Boolean |
代码签名,OID为:1.3.6.1.5.5.7.3.3。
说明:
签署可下载的可执行代码客户端认证,默认为false。
|
email_protection |
否 |
Boolean |
安全电子邮件,OID为:1.3.6.1.5.5.7.3.4。
说明:
电子邮件保护,默认为false。
|
time_stamping |
否 |
Boolean |
时间戳,OID为:1.3.6.1.5.5.7.3.8。
说明:
将一个对象的哈希绑定到一个时间,默认为false。
|
smart_card_logon |
否 |
Boolean |
智能卡登录,OID为:1.3.6.1.4.1.311.20.2.2。
说明:
Active Directory登录,默认为false。
|
响应参数
状态码:200
参数 |
参数类型 |
描述 |
---|---|---|
certificate_id |
String |
当前签发的证书ID。 |
状态码:400
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误请求返回的错误码。 |
error_msg |
String |
错误请求返回的错误信息。 |
状态码:401
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误请求返回的错误码。 |
error_msg |
String |
错误请求返回的错误信息。 |
状态码:403
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误请求返回的错误码。 |
error_msg |
String |
错误请求返回的错误信息。 |
状态码:404
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误请求返回的错误码。 |
error_msg |
String |
错误请求返回的错误信息。 |
状态码:500
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误请求返回的错误码。 |
error_msg |
String |
错误请求返回的错误信息。 |
请求示例
申请证书,请求头中的X-Auth-Token字段需要填写token,且该token需要具有本API的访问权限。
POST https://ccm.cn-north-4.myhuaweicloud.com/v1/private-certificates { "key_algorithm" : "RSA2048", "distinguished_name" : { "country" : "CN", "state" : "Sichuan", "locality" : "Chengdu", "organization" : "Huawei", "organizational_unit" : "CloudBU", "common_name" : "TestCert" }, "subject_alternative_names" : [ { "type" : "IP", "value" : "156.127.116.38" } ], "signature_algorithm" : "SHA256", "validity" : { "type" : "YEAR", "value" : 3 }, "issuer_id" : "2cb2878b-6cd1-460d-bd25-afe655159bdc", "key_usages" : [ "digitalSignature", "nonRepudiation" ] }
响应示例
状态码:200
请求已成功
{ "certificate_id" : "ae9a326a-b61e-4446-854d-cda30ffe31f5" }
状态码: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 |
服务内部错误。 |
错误码
请参见错误码。