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

在CodeArts TestPlan接口脚本中调用GetIAMToken关键字

概述

该系统关键字可以用于通过用户名/密码的方式进行认证来获取IAM用户Token。Token是系统颁发给IAM用户的访问令牌,承载用户的身份、权限等信息。调用IAM以及其他云服务的接口时,可以使用该系统关键字获取的IAM用户Token。

参数详解

参数

是否必选

参数类型

默认值

描述

IAM Token URL

String

https://iam.myhuaweicloud.com/v3/auth/tokens

IAM的Endpoint(终端节点)。

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

Domain Name

String

<空>

IAM用户所属账号名称/租户名。

当使用华为账号登录时,租户(账号)名称与用户名相同。关于如何获取账号名称请参见:获取账号

User Name

String

<空>

IAM用户名。关于如何获取用户名称请参见:获取IAM用户名

Password

String

<空>

IAM用户登录密码(登录密码属于个人敏感信息,须在环境参数中定义为敏感参数)。

Region ID

String

<空>

区域ID(如:cn-north-1),关于如何获取区域ID请参见:获取区域ID

默认检查点

名称

预期值

结果

成功

默认响应提取

名称

提取变量

含义

IAM_TOKEN

X-Subject-Token

用户TOKEN字符

响应

  • 状态:成功

    参数

    参数类型

    描述

    Body

    IAM接口返回体

    IAM接口返回体

  • 响应示例
{
    "token": {
        "catalog": [],
        "expires_at": "2020-01-04T09:05:22.701000Z",
        "issued_at": "2020-01-03T09:05:22.701000Z",
        "methods": [
            "password"
        ],
        "project": {
            "domain": {
                "id": "d78cbac186b744899480f25bd022f...",
                "name": "IAMDomain"
            },
            "id": "aa2d97d7e62c4b7da3ffdfc11551f...",
            "name": "cn-north-1"
        },
        "roles": [
            {
                "id": "0",
                "name": "te_admin"
            },
            {
                "id": "0",
                "name": "op_gated_OBS_file_protocol"
            },
            {
                "id": "0",
                "name": "op_gated_Video_Campus"
            }
        ],
        "user": {
            "domain": {
                "id": "d78cbac186b744899480f25bd022f...",
                "name": "IAMDomain"
            },
            "id": "7116d09f88fa41908676fdd4b039e...",
            "name": "IAMUser",
            "password_expires_at": ""
        }
    },
    "X-Subject-Token": "MIIatAYJKoZIhvcNAQcCoIIapTCCGqECAQExDTALB..."
}

示例

  • 获取IAM用户TOKEN

Password字段属于敏感参数,需要在变量里面配置且设置为敏感参数,在下拉框中选用。

  • 在接口中引用TOKEN

IAM_TOKEN为保留的默认响应提取,可以直接在请求里面引用。