AliyunSTSAssumeRoleAccess
是阿里云访问控制自带的一个权限策略,内容为:
{
"Statement": [
{
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Resource": "*"
}
],
"Version": "1"
}
根据文档权限策略语法结构可知,该策略赋给RAM用户后,该用户可以扮演阿里云所有角色,即便该角色所拥有的权限,是RAM用户本身所不拥有的,从严谨角度触发,作为一个配置管理工程师当然不允许这种情况出现,经过咨询及实现,特提供如下方法。
后文讨论前提:限制RAM用户在使用STS机制生成临时权限token时,仅限单OSS bucket
1、新建权限策略P1
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": "oss:*",
"Resource": [
"acs:oss:*:*:mybucket",
"acs:oss:*:*:mybucket/*"
]
}
]
}
此权限策略允许用户对mybucket下所有对象进行任意操作
2、新建角色R1,赋予P1所配置的权限,并记录R1的ARN值
3、新建权限策略P2
{
"Statement": [
{
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Resource": [
"XXX"
]
}
],
"Version": "1"
}
其中XXX请填入步骤2记录的ARN值
网友评论