更新时间:2024-07-11 GMT+08:00

创建不含明文数据密钥

功能介绍

  • 功能介绍:创建数据密钥,返回结果只包含密文。

调用方法

请参见如何调用API

URI

POST /v1.0/{project_id}/kms/create-datakey-without-plaintext

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

表3 请求Body参数

参数

是否必选

参数类型

描述

key_id

String

密钥ID,36字节,满足正则匹配“^[0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12}$”。 例如:0d0466b0-e727-4d9c-b35d-f84bb474a37f。

key_spec

String

指定生成的密钥bit位长度。有效值:AES_256、AES_128。

  • AES_256:表示256比特的对称密钥。

  • AES_128:表示128比特的对称密钥。 说明: datakey_length和key_spec二选一。

  • 若datakey_length和key_spec都为空,默认生成256bit的密钥。

  • 若datakey_length和key_spec都指定了值,仅datakey_length生效。

datakey_length

String

密钥bit位长度。取值为8的倍数,取值范围为8~8192。 说明: datakey_length和key_spec二选一。

  • 若datakey_length和key_spec都为空,默认生成256bit的密钥。

  • 若datakey_length和key_spec都指定了值,仅datakey_length生效。

sequence

String

请求消息序列号,36字节序列号。 例如:919c82d4-8046-4722-9094-35c3c6524cff

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

key_id

String

密钥ID。

cipher_text

String

加密后的密文,使用了Base64编码

状态码: 400

表5 响应Body参数

参数

参数类型

描述

error

Object

错误信息返回体。

表6 ErrorDetail

参数

参数类型

描述

error_code

String

错误请求返回的错误码

error_msg

String

错误请求返回的错误信息

状态码: 401

表7 响应Body参数

参数

参数类型

描述

error

Object

错误信息返回体。

表8 ErrorDetail

参数

参数类型

描述

error_code

String

错误请求返回的错误码

error_msg

String

错误请求返回的错误信息

状态码: 403

表9 响应Body参数

参数

参数类型

描述

error

Object

错误信息返回体。

表10 ErrorDetail

参数

参数类型

描述

error_code

String

错误请求返回的错误码

error_msg

String

错误请求返回的错误信息

状态码: 404

表11 响应Body参数

参数

参数类型

描述

error

Object

错误信息返回体。

表12 ErrorDetail

参数

参数类型

描述

error_code

String

错误请求返回的错误码

error_msg

String

错误请求返回的错误信息

状态码: 500

表13 响应Body参数

参数

参数类型

描述

error

Object

错误信息返回体。

表14 ErrorDetail

参数

参数类型

描述

error_code

String

错误请求返回的错误码

error_msg

String

错误请求返回的错误信息

状态码: 502

表15 响应Body参数

参数

参数类型

描述

error

Object

错误信息返回体。

表16 ErrorDetail

参数

参数类型

描述

error_code

String

错误请求返回的错误码

error_msg

String

错误请求返回的错误信息

状态码: 504

表17 响应Body参数

参数

参数类型

描述

error

Object

错误信息返回体。

表18 ErrorDetail

参数

参数类型

描述

error_code

String

错误请求返回的错误码

error_msg

String

错误请求返回的错误信息

请求示例

创建"512"位长度的明文数据密钥,并使用ID为"0d0466b0-e727-4d9c-b35d-f84bb474a37f"的密钥进行加密,不返回明文密钥。

{
  "key_id" : "0d0466b0-e727-4d9c-b35d-f84bb474a37f",
  "datakey_length" : "512"
}

响应示例

状态码: 200

请求已成功

{
  "key_id" : "0d0466b0-e727-4d9c-b35d-f84bb474a37f",
  "cipher_text" : "020098009EEAFCE122CAA5927D2XXX..."
}

状态码

状态码

描述

200

请求已成功

400

请求参数有误

401

被请求的页面需要用户名和密码

403

认证失败

404

资源不存在,资源未找到

500

服务内部错误

502

请求未完成。服务器从上游服务器收到一个无效的响应

504

网关超时

错误码

请参见错误码