更新时间:2022-12-05 GMT+08:00

创建密钥

功能介绍

该API用于创建一个密钥。

URI

POST /v2/{project_id}/edgemgr/secrets

名称

是否必选

说明

project_id

项目ID,获取方法请参见获取项目ID

请求消息

请求参数

表1 请求Header参数

参数

是否必选

类型

描述

Content-Type

String

消息体的类型(格式)

推荐您使用默认值application/json。

X-Auth-Token

String

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

表2 请求Body参数

名称

是否必选

参数类型

说明

secret

表3 object

密钥

表3 secret

名称

是否必选

参数类型

说明

name

String

密钥名称,以小写英文字母开头,4-64位,可以使用小写英文、数字、中划线(-),不能以中划线结尾。

type

String

密钥类型,目前只支持“Opaque”类型。

description

String

密钥描述,最大长度255,不允许^ ~ # $ % & * < > ( ) [ ] { } ' " \

secrets

Map<String, String>

secrets是一个字典,由多个键值对组成,json化后最大总长度为1048576,key和value均为字符串。键值对中key由大小写字母或中划线开头,由数字、大小写字母、点号(.)、中划线(-)、下划线(_)组成,最小长度为1,最大长度63个字符,键值对中的value必须为base64字符。

注:secrets字典的长度即字典转为标准的字符串后的长度,例如字典{"a": "b"}转为标准字符串后为'{"a": "b"}',长度为10

请求示例

{
    "secret": {
        "name": "test-secret",
        "description": "this is a test secret",
        "type": "Opaque",
        "secrets": {
            "key1": "val1",
            "key2": "val2 "
        }
    }
}

响应消息

响应参数

表4 响应Body参数

名称

参数类型

说明

secret

表5 object

密钥

表5 secret

名称

参数类型

说明

id

String

密钥ID

name

String

密钥名称

description

String

密钥描述

secrets

Object

密钥列表

project_id

String

项目ID

created_at

String

创建时间

updated_at

String

更新时间

type

String

密钥类型

响应示例
{
    "secret": {
        "id": "12ns9eb6cc0d49a0941df2f31283mds8 ",
        "name": "test-secret",
        "description": "this is a test secret",
        "secrets": {
            "key1": "val-1",
            "key2": "val-2"
        },
        "project_id": "d16e6eb6cc0d49a0941df2f31285757a",
        "created_at": "2018-07-16T13:41:25.347335",
        "updated_at": "2018-07-18T13:41:25.347335",
        "type": "Opaque"
    }
}

错误码

请参见错误码