美文网首页
巧用阿里云AliyunSTSAssumeRoleAccess——

巧用阿里云AliyunSTSAssumeRoleAccess——

作者: 王小奕 | 来源:发表于2021-03-29 11:26 被阅读0次

    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值

    4、新建编程用户U,赋予权限策略P2

    5、后文

    关于STS临时权限机制方法请参考官方文档

    相关文章

      网友评论

          本文标题:巧用阿里云AliyunSTSAssumeRoleAccess——

          本文链接:https://www.haomeiwen.com/subject/wtzvhltx.html