创建信任委托
功能介绍
该接口可以用于创建信任委托。

URI
POST /v5/agencies
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
agency_name |
是 |
String |
信任委托名称,长度为1到64个字符,只包含字母、数字、"_"、"+"、"="、","、"."、"@"和"-"的字符串。 |
path |
否 |
String |
资源路径,默认为空串。由若干段字符串拼接而成,每段先包含一个或多个字母、数字、"."、","、"+"、"@"、"="、"_"或"-",并以"/"结尾,例如"foo/bar/"。 |
trust_policy |
是 |
String |
信任委托信任策略的策略文档的json格式。下面的字符= < > ( ) |是语法中的特殊字符,不包含在信任策略中。 问号?表示元素是可选的。例如sid_block?。 竖线|表示可选项,括号定义了可选项的范围。例如("Allow" | "Deny")。 当一个元素允许多个值时,使用重复值,以及...表示。例如[ <policy_statement>, <policy_statement>, ... ]。 下面的递归文法描述了信任策略的语法: policy = { <version_block>, <statement_block> } <version_block> = "Version" : ("5.0") <statement_block> = "Statement" : [ <policy_statement>, <policy_statement>, ... ] <policy_statement> = { <sid_block?>, <principal_block>, <effect_block>, <action_block>, <resource_block?>, <condition_block?> } <sid_block> = "Sid" : <sid_string> <principal_block> = ("Principal" | "NotPrincipal") : <principal_map> <principal_map> = { <principal_map_entry>, <principal_map_entry>, ... } <principal_map_entry> = ("IAM" | "Service") : [ <principal_id_string>, ... | <service_principal_string>, ... ] <effect_block> = "Effect" : ("Allow" | "Deny") <action_block> = ("Action" | "NotAction") : [ <action_string>, <action_string>, ... ] <resource_block> = ("Resource" | "NotResource") : [ <resource_string>, <resource_string>, ... ] <condition_block> = "Condition" : { <condition_map> } <condition_map> = { <condition_type_string> : { <condition_key_string> : <condition_value_list> }, <condition_type_string> : { <condition_key_string> : <condition_value_list> }, ... } <condition_value_list> = ( <condition_value> | [ <condition_value>, <condition_value>, ... ] ) <condition_value> = "string" |
max_session_duration |
否 |
Integer |
信任委托最大会话时长,默认为3600秒,取值范围为[3600,43200]。 |
description |
否 |
String |
信任委托描述信息,默认为空串,字符串最大长度为1000。 最大长度:1000 |
响应参数
状态码:201
参数 |
参数类型 |
描述 |
---|---|---|
agency |
TrustAgency object |
信任委托。 |
参数 |
参数类型 |
描述 |
---|---|---|
urn |
String |
统一资源名称。 |
trust_policy |
String |
信任委托信任策略的策略文档的json格式。下面的字符= < > ( ) |是语法中的特殊字符,不包含在信任策略中。 问号?表示元素是可选的。例如sid_block?。 竖线|表示可选项,括号定义了可选项的范围。例如("Allow" | "Deny")。 当一个元素允许多个值时,使用重复值,以及...表示。例如[ <policy_statement>, <policy_statement>, ... ]。 下面的递归文法描述了信任策略的语法: policy = { <version_block>, <statement_block> } <version_block> = "Version" : ("5.0") <statement_block> = "Statement" : [ <policy_statement>, <policy_statement>, ... ] <policy_statement> = { <sid_block?>, <principal_block>, <effect_block>, <action_block>, <resource_block?>, <condition_block?> } <sid_block> = "Sid" : <sid_string> <principal_block> = ("Principal" | "NotPrincipal") : <principal_map> <principal_map> = { <principal_map_entry>, <principal_map_entry>, ... } <principal_map_entry> = ("IAM" | "Service") : [ <principal_id_string>, ... | <service_principal_string>, ... ] <effect_block> = "Effect" : ("Allow" | "Deny") <action_block> = ("Action" | "NotAction") : [ <action_string>, <action_string>, ... ] <resource_block> = ("Resource" | "NotResource") : [ <resource_string>, <resource_string>, ... ] <condition_block> = "Condition" : { <condition_map> } <condition_map> = { <condition_type_string> : { <condition_key_string> : <condition_value_list> }, <condition_type_string> : { <condition_key_string> : <condition_value_list> }, ... } <condition_value_list> = ( <condition_value> | [ <condition_value>, <condition_value>, ... ] ) <condition_value> = "string" |
created_at |
String |
信任委托创建时间。 |
description |
String |
信任委托描述信息。 |
max_session_duration |
Integer |
信任委托最大会话时长,默认为3600秒,取值范围为[3600,43200]。 |
path |
String |
资源路径,默认为空串。由若干段字符串拼接而成,每段先包含一个或多个字母、数字、"."、","、"+"、"@"、"="、"_"或"-",并以"/"结尾,例如"foo/bar/"。 |
agency_id |
String |
信任委托ID,长度为1到64个字符,只包含字母、数字和"-"的字符串。 |
agency_name |
String |
信任委托名称,长度为1到64个字符,只包含字母、数字、"_"、"+"、"="、","、"."、"@"和"-"的字符串。 |
trust_domain_id |
String |
被委托方账号ID,仅存在于委托中,不存在于信任委托中。 |
trust_domain_name |
String |
被委托方账号名,仅存在于委托中,不存在于信任委托中。 |
状态码:400
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码。 |
error_msg |
String |
错误信息。 |
状态码:403
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码。 |
error_msg |
String |
错误信息。 |
request_id |
String |
请求ID。 |
encoded_authorization_message |
String |
加密后的认证失败信息,可以通过STS5解密接口进行解密。 |
状态码:409
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码。 |
error_msg |
String |
错误信息。 |
request_id |
String |
请求ID。 |
请求示例
创建名为name的信任委托。
POST https://{endpoint}/v5/agencies { "agency_name" : "name", "path" : "", "trust_policy" : "{\"Version\":\"5.0\",\"Statement\":[{\"Action\":[\"sts:agencies:assume\",\"sts::tagSession\",\"sts::setSourceIdentity\"],\"Effect\":\"Allow\",\"Principal\":{\"IAM\":[\"xxx\"]}}]}", "max_session_duration" : 3600, "description" : "description" }
响应示例
状态码:201
请求成功。
{ "agency" : { "urn" : "iam::accountid:agency:name", "trust_policy" : "{\"Version\":\"5.0\",\"Statement\":[{\"Action\":[\"sts:agencies:assume\",\"sts::tagSession\",\"sts::setSourceIdentity\"],\"Effect\":\"Allow\",\"Principal\":{\"IAM\":[\"xxx\"]}}]}", "created_at" : "2023-09-21T01:17:19.590Z", "description" : "description", "max_session_duration" : 3600, "path" : "", "agency_id" : "string", "agency_name" : "name", "trust_domain_id" : null, "trust_domain_name" : null } }
状态码
状态码 |
描述 |
---|---|
201 |
请求成功。 |
400 |
请求体异常。 |
403 |
没有操作权限。 |
409 |
请求冲突。 |
错误码
请参见错误码。