更新时间:2024-04-17 GMT+08:00
分享

获取Token

在调用任何ELB API时,用户都需要调用统一身份认证服务(IAM)的接口进行鉴权。

具体步骤

  1. 创建环境变量,点击Postman主页上的环境变量管理按钮(下图最右侧齿轮),如表1所示。创建一组名为“huaweicloud.com”的变量,在Key部分至少包含username、password、domain_username、project_id,并填写对应的Value。变量具体的值可以在web控制台-我的凭证中获得。

    图1 环境变量管理

    图2 环境变量值

    上图中各项变量可在web控制台上的“我的凭证”中获取,web上的属性和变量的对应关系请参考表1

    表1 变量说明

    变量

    说明

    username

    用户名

    password

    密码

    tenant_id

    用户ID

    domain_username

    账号名

    domain_id

    账号ID

    project_id

    项目ID

    region

    局点

    X-Auth-Token

    租户Token

  2. 填写消息。

    图3 填写消息

    选择raw格式,并在稍右侧选择JSON(application/json)。

    详情请参考《统一身份认证服务API参考》。

  3. 发送请求。

    发送请求并在地址栏填写请求的URL,这里我们将请求发送到所有局点公用的IAM 后端地址,并在后面加上IAM提供的URI(即“/v3/auth/tokens”部分)。

    选择请求方式为POST,并点击Send按钮,如果以上信息填写正确,则会得到类似下图的响应。

    图4 发送请求

    切换到Headers页面,其中的x-subject-token就是我们接下来发送请求所需的Token。

    图5 x-subject-token

    在调用ELB资源接口时,请在请求的头部添加X-Auth-Token字段,并将值设为获取到的Token。如果获取到的响应为401消息,请认真检查请求体内的信息是否填写正确。

示例代码

2中消息体内容。

{
    "auth": {
        "identity": {
            "methods": [
                "password"
            ],
            "password": {
                "user": {
                    "name": "{{username}}",
                    "password": "{{password}}",
                    "domain": {
                        "name": "{{domain_username}}"
                    }
                }
            }
        },
        "scope": {
            "project": {
                "id": "{{project_id}}"
            }
        }
    }
}

消息体中的“{{”和“}}”表示变量引用。

相关文档