申请证书
功能介绍
申请证书。
URI
POST /v1/private-certificates
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| X-Auth-Token | 是 | String | 用户token,通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| issuer_id | 是 | String | 父CA证书ID。 最小长度:36 最大长度:36 |
| key_algorithm | 是 | String | 密钥算法,可选值如下:
|
| signature_algorithm | 是 | String | 签名哈希算法,可选值如下:
|
| 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字段数据结构说明。
数组长度:0 - 20 |
| extended_key_usage | 否 | ExtendedKeyUsage object | 增强型密钥用法,详情请参见ExtendedKeyUsage字段数据结构说明。 |
| customized_extension | 否 | CustomizedExtension object | 自定义扩展信息,详情请参见CustomizedExtension字段数据结构说明。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| common_name | 是 | String | 证书通用名称(CN)。 最小长度:1 最大长度:64 |
| country | 否 | String | 国家编码,需符合正则[A-Za-z]{2}。若不传入,则默认继承父CA对应的值。 最小长度:2 最大长度:2 |
| state | 否 | String | 省市名称。若不传入,则默认继承父CA对应的值。 最小长度:1 最大长度:128 |
| locality | 否 | String | 地区名称。若不传入,则默认继承父CA对应的值。 最小长度:1 最大长度:128 |
| organization | 否 | String | 组织名称。若不传入,则默认继承父CA对应的值。 最小长度:1 最大长度:64 |
| organizational_unit | 否 | String | 组织单元名称。若不传入,则默认继承父CA对应的值。 最小长度:1 最大长度:64 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| type | 是 | String | 有效期类型,为必填值:
|
| value | 是 | Integer | 证书有效期值,与type对应的类型值,换算成年需满足以下规则:
|
| start_from | 否 | Integer | 起始时间,为可选值:
|
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| type | 是 | String | 备用名称类型,当前仅支持DNS、IP、EMAIL、URI。
|
| value | 是 | String | 对应备用名称类型的值。
|
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| server_auth | 否 | Boolean | 服务器身份验证,OID为:1.3.6.1.5.5.7.3.1。
说明: 服务器证书请启用本增强型密钥用法,默认为false。 缺省值:false |
| client_auth | 否 | Boolean | 客户端身份验证,OID为:1.3.6.1.5.5.7.3.2。
说明: 客户端证书请启用本增强型密钥用法,默认为false。 缺省值:false |
| code_signing | 否 | Boolean | 代码签名,OID为:1.3.6.1.5.5.7.3.3。
说明: 签署可下载的可执行代码客户端认证,默认为false。 缺省值:false |
| email_protection | 否 | Boolean | 安全电子邮件,OID为:1.3.6.1.5.5.7.3.4。
说明: 电子邮件保护,默认为false。 缺省值:false |
| time_stamping | 否 | Boolean | 时间戳,OID为:1.3.6.1.5.5.7.3.8。
说明: 将一个对象的哈希绑定到一个时间,默认为false。 缺省值:false |
响应参数
状态码: 200
| 参数 | 参数类型 | 描述 |
|---|---|---|
| certificate_id | String | 当前签发的证书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 |
请求示例
申请证书,请求头中的X-Auth-Token字段需要填写token,且该token需要具有本API的访问权限。
POST https://{Endpoint}/v1/private-certificates
{
"key_algorithm" : "RSA2048",
"distinguished_name" : {
"country" : "your country abbreviation",
"state" : "your state",
"locality" : "your locality",
"organization" : "your organization",
"organizational_unit" : "your unit",
"common_name" : "your CN"
},
"subject_alternative_names" : [ {
"type" : "IP",
"value" : "xx.xx.xx.xx"
} ],
"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 | 服务内部错误。 |
错误码
请参见错误码。