统一身份认证服务 IAM-获取委托Token:请求参数

时间:2023-11-01 16:23:05

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

Content-Type

String

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

X-Auth-Token

String

被委托方B帐号中的IAM用户token,且该token具有Agent Operator权限。

表3 请求Body参数

参数

是否必选

参数类型

描述

auth

Object

认证信息。

表4 auth

参数

是否必选

参数类型

描述

identity

Object

认证参数。

scope

Object

token的使用范围,需要填写委托方A的project或domain,填写其中任一即可。

说明:
  • 如果您将scope设置为domain,该Token适用于全局级服务;如果将scope设置为project,该Token适用于项目级服务。
  • 如果您将scope同时设置为project和domain,将以project参数为准,获取到项目级服务的Token。
  • 如果您将scope置空,将获取到全局级服务的Token。建议您按需要填写Token使用范围。
表5 auth.identity

参数

是否必选

参数类型

描述

methods

Array of strings

token的获取方式,该字段内容为["assume_role"]。

取值范围:

  • assume_role

assume_role

Object

assume_role的具体信息。

表6 auth.identity.assume_role

参数

是否必选

参数类型

描述

domain_id

String

委托方A的帐号ID。“domain_id”与“domain_name”至少填写一个,建议选择“domain_id”。

委托方A可以参考获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID获取帐号ID。

domain_name

String

委托方A的帐号名称。“domain_id”与“domain_name”至少填写一个,建议选择“domain_id”。

您可以在IAM控制台委托列表中查看委托方A的帐号名称。

agency_name

String

委托方A创建的委托名称,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID

表7 auth.scope

参数

是否必选

参数类型

描述

domain

Object

取值为domain时,表示获取的Token可以作用于全局服务,全局服务不区分项目或区域,如OBS服务。如需了解服务作用范围,请参考系统权限。domain支持id和name,二选一即可,建议选择“domain_id”。

project

Object

取值为project时,表示获取的Token可以作用于项目级服务,仅能访问指定project下的资源,如ECS服务。如需了解服务作用范围,请参考系统权限。project支持id和name,二选一即可。

表8 auth.scope.domain

参数

是否必选

参数类型

描述

id

String

委托方A的帐号ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。id和name,二选一即可。

name

String

委托方A的帐号名,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。id和name,二选一即可。

表9 auth.scope.project

参数

是否必选

参数类型

描述

id

String

委托方A项目的ID,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。id和name,二选一即可。

name

String

委托方A项目的名称,获取方式请参见:获取帐号、IAM用户、项目、用户组、区域、委托的名称和ID。id和name,二选一即可。

support.huaweicloud.com/api-iam/iam_30_0003.html