繁体   English   中英

S3存储桶策略以允许访问特定角色并限制所有角色

[英]S3 Bucket Policy to Allow access to specific roles and restrict all

我想将对S3存储桶的访问限制为所有角色,但不能使用S3存储桶策略选择几个角色。但是在此,当我切换到我的作家和读者角色时,其访问被拒绝。

铲斗政策

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::581262627839:role/Rk-S3-Reader-I-Role"
            },
            "Action": "s3:ListBucket",
            "Resource": "arn:aws:s3:::rkimpdocs"
        },
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::581262627839:role/Rk-S3-Writer-I-Role"
            },
            "Action": [
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": "arn:aws:s3:::rkimpdocs/*"
        },
        {
            "Effect": "Deny",
            "Principal": {
                "AWS": "*"
            },
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::rkimpdocs",
                "arn:aws:s3:::rkimpdocs/*"
            ],
            "Condition": {
                "ForAllValues:StringEquals": {
                    "aws:TagKeys": [
                        "JD",
                        "devops"
                    ]
                }
            }
        }
    ]
}  

编写者角色的IAM角色许可 (Rk-S3-Writer-I-Role)

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetBucketLocation",
                "s3:ListAllMyBuckets"
            ],
            "Resource": "arn:aws:s3:::*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::rkimpdocs"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::rkimpdocs",
                "arn:aws:s3:::rkimpdocs/*"
            ]
        }
    ]
}

输出:

桶策略和切换到提及角色均拒绝访问。 任何帮助/建议都会有所帮助。

明确的拒绝将覆盖所有允许。 在您的策略中,“存储桶中的拒绝”策略导致访问被拒绝。 要授予对特定IAM角色的访问权限并拒绝其他角色,应使用“ NotPrincipal”元素。 请参考此博客 ,其中解释了您的确切用例。 此外,S3 不支持 “ aws:Tagkeys”条件,因此您也必须忽略该条件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM