调用CreateRole创建角色。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | CreateRole |
要执行的操作。取值:CreateRole。 |
AssumeRolePolicyDocument | String | 是 | { "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "RAM": "acs:ram::12345678901234****:root" } } ], "Version": "1" } |
扮演角色的权限策略内容。 指定允许扮演该角色的一个或多个主体,这个主体可以是阿里云账号、阿里云服务或身份提供商。 说明 RAM用户不能扮演可信实体为阿里云服务的RAM角色。
|
RoleName | String | 是 | ECSAdmin |
角色名称。 长度为1~64个字符,可包含英文字母、数字、点号(.)和短横线(-)。 |
Description | String | 否 | ECS管理角色 |
角色描述。 长度为1~1024个字符。 |
MaxSessionDuration | Long | 否 | 3600 |
角色最大会话时间。 取值范围:3600秒~43200秒。默认值:3600秒。 取值为空时将采用默认值。 |
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
RequestId | String | 04F0F334-1335-436C-A1D7-6C044FE73368 |
请求ID。 |
Role | Struct |
角色信息。 |
|
Arn | String | acs:ram::123456789012****:role/ECSAdmin |
角色的资源描述符。 |
AssumeRolePolicyDocument | String | { \"Statement\": [ { \"Action\": \"sts:AssumeRole\", \"Effect\": \"Allow\", \"Principal\": { \"RAM\": \"acs:ram::12345678901234****:root\" } } ], \"Version\": \"1\" } |
扮演角色的权限策略内容。 |
CreateDate | String | 2015-01-23T12:33:18Z |
角色创建时间。 |
Description | String | ECS管理角色 |
角色描述。 |
MaxSessionDuration | Long | 3600 |
角色最大会话时间。 |
RoleId | String | 90123456789**** |
角色ID。 |
RoleName | String | ECSAdmin |
角色名称。 |
RolePrincipalName | String | ECSAdmin@role.123456.onaliyunservice.com |
被授权角色名称。 |
示例
请求示例
https://resourcemanager.aliyuncs.com/?Action=CreateRole
&AssumeRolePolicyDocument={ "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "RAM": "acs:ram::12345678901234****:root" } } ], "Version": "1" }
&RoleName=ECSAdmin
&<公共请求参数>
正常返回示例
XML
格式
<CreateRoleResponse>
<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>
<Role>
<RoleId>90123456789****</RoleId>
<RoleName>ECSAdmin</RoleName>
<RolePrincipalName>ECSAdmin@role.123456.onaliyunservice.com</RolePrincipalName>
<Arn>acs:ram::123456789012****:role/ECSAdmin</Arn>
<Description>ECS管理角色</Description>
<MaxSessionDuration>3600</MaxSessionDuration>
<AssumeRolePolicyDocument>{ "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "RAM": "acs:ram::12345678901234****:root" } } ], "Version": "1" }</AssumeRolePolicyDocument>
<CreateDate>2015-01-23T12:33:18Z</CreateDate>
</Role>
</CreateRoleResponse>
JSON
格式
{
"RequestId": "04F0F334-1335-436C-A1D7-6C044FE73368",
"Role": {
"RoleId": "90123456789****",
"RoleName": "ECSAdmin",
"RolePrincipalName": "ECSAdmin@role.123456.onaliyunservice.com",
"Arn": "acs:ram::123456789012****:role/ECSAdmin",
"Description": "ECS管理角色",
"MaxSessionDuration": 3600,
"AssumeRolePolicyDocument": "{ \"Statement\": [ { \"Action\": \"sts:AssumeRole\", \"Effect\": \"Allow\", \"Principal\": { \"RAM\": \"acs:ram::12345678901234****:root\" } } ], \"Version\": \"1\" }",
"CreateDate": "2015-01-23T12:33:18Z"
}
}
错误码
HttpCode | 错误码 | 错误信息 | 描述 |
---|---|---|---|
400 | InvalidParameter.RoleName.InvalidChars | The specified role name contains invalid characters. | 角色名称包含无效字符。 |
400 | InvalidParameter.RoleName.Length | The maximum length of the role name is exceeded. | 角色名称长度超出限制。 |
400 | InvalidParameter.AssumeRolePolicyDocument.Length | The maximum length of the trust policy document of the role is exceeded. | 角色信任策略长度超出限制。 |
409 | EntityAlreadyExists.Role | The role already exists. | 角色已存在。 |
409 | MalformedPolicyDocument | The policy format is invalid. | 策略格式错误。 |
409 | LimitExceeded.Role | The maximum number of roles is exceeded. | 角色数量超出限制。 |
访问错误中心查看更多错误码。