更新时间:2022-08-16 GMT+08:00

创建永久访问密钥

功能介绍

该接口可以用于管理员给IAM用户创建永久访问密钥,或IAM用户给自己创建永久访问密钥。

访问密钥(Access Key ID/Secret Access Key,简称AK/SK),是您通过开发工具(API、CLI、SDK)访问系统时的身份凭证,不用于登录控制台。系统通过AK识别访问用户的身份,通过SK进行签名验证,通过加密签名验证可以确保请求的机密性、完整性和请求者身份的正确性。

该接口可以使用全局区域的Endpoint和其他区域的Endpoint调用。

URI

POST /v3.0/OS-CREDENTIAL/credentials

请求参数

表1 请求Header参数

参数

是否必选

参数类型

描述

Content-Type

String

该字段填为“application/json;charset=utf8”。

X-Auth-Token

String

管理员给IAM用户创建永久访问密钥:拥有Security Administrator权限的token。

IAM用户给自己创建永久访问密钥:请求体中user_id所对应IAM用户的token(无需特殊权限)。

表2 请求Body参数

参数

是否必选

参数类型

描述

credential

Object

认证信息。

表3 credential

参数

是否必选

参数类型

描述

user_id

String

待创建访问秘钥(AK/SK)的IAM用户ID。

description

String

访问密钥描述信息。

响应参数

表4 响应Body参数

参数

参数类型

描述

credential

Object

认证结果信息。

表5 credential

参数

参数类型

描述

create_time

String

创建访问密钥时间。

access

String

创建的AK。

secret

String

创建的SK。

status

String

访问密钥状态。

user_id

String

IAM用户ID。

description

String

访问密钥描述信息。

请求示例

POST https://sample.domain.com/v3.0/OS-CREDENTIAL/credentials
{
    "credential": {
        "description": "IAMDescription",
        "user_id": "07609fb9358010e21f7bc003751c7c32"
    }
}

响应示例

状态码为 201 时:

创建成功。

{
    "credential": {
        "access": "P83EVBZJMXCYTMUII...",
        "create_time": "2020-01-08T06:25:19.014028Z",
        "user_id": "07609fb9358010e21f7bc003751...",
        "description": "IAMDescription",
        "secret": "TTqAHPbhWorg9ozx8Dv9MUyzYnOKDppxzHt...",
        "status": "active"
    }
}

状态码为 400 时:

参数无效。(包括密钥数量已达到上限。)

{
    "error": {
        "message": "akSkNumExceed",
        "code": 400,
        "title": "Bad Request"
    }
}

返回值

返回值

描述

201

创建成功。

400

参数无效。(包括密钥数量已达到上限。)

401

认证失败。

403

没有操作权限。

500

内部服务错误。

错误码