【问题标题】:Unable to add policy based on tags for s3 objects无法为 s3 对象添加基于标签的策略
【发布时间】:2022-10-14 05:05:36
【问题描述】:

我是 AWS 的新手,我有一个场景,我需要根据标签授予对 s3 对象的访问权限。我使用我的根账户创建了 IAM 用户并将以下策略附加到用户。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "*",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "s3:ExistingObjectTag/role": "developer"
                }
            }
        }
    ]
}

现在我有许多文件的存储桶,并用标签role 和值为developer 标记了一个文件,这样我的用户只能看到我标记的一个文件。

https://imgur.com/a/tEe0rCw

https://imgur.com/a/Npq9gb4

但是当我使用 IAM 用户登录时,我没有看到任何存储桶。理想情况下,我希望我会看到带有相关文件的存储桶(带有正确标签的文件)

https://imgur.com/a/t7GSlxS

我尝试了其他几个选项,但没有一个选项有效。我尝试的另一个选择是

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:ListObject"
            ],
            "Resource": "arn:aws:s3:::general-eda/*",
            "Condition": {
                "StringEquals": {
                    "s3:ExistingObjectTag/role": "developer"
                }
            }
        }
    ]
}

我做错了什么还是用户应该拥有任何其他权限,以便标签按预期工作。任何帮助表示赞赏。

【问题讨论】:

  • 如果您希望他们看到存储桶,您需要授予 ListAllMyBuckets 权限(不支持任何条件)。他们可以通过直接导航到浏览器中的正确 url 来列出晦涩难懂的内容,而不会看到存储桶。
  • 我又添加了一条语句``` { "Effect": "Allow", "Action": "s3:ListAllMyBuckets", "Resource": "*" }``` 现在我看到了所有的桶,但是当我打开桶时说“列出对象的权限不足”

标签: amazon-web-services amazon-s3


【解决方案1】:

你的政策基本上是说“允许这个人做任何事物在 AWS 上,只要对象的标签为 role:develop"。

但是,很少有对 AWS 的 API 调用可以使用此 Condition。它们是:DeleteObjectTaggingDeleteObjectVersionTaggingGetObjectGetObjectAclGetObjectAttributesGetObjectTaggingGetObjectVersionGetObjectVersionAclGetObjectVersionAclGetObjectVersionAttributesGetObjectVersionTaggingGetObjectVersionTagging、@9867654333 , PutObjectVersionAcl, PutObjectVersionTagging

见:Actions, resources, and condition keys for Amazon S3 - Service Authorization Reference

所以,任何 API 调用不是以上其中一项将失败由于您的 IAM 政策中的条件。

要列出存储桶的内容,您需要向用户授予 s3:ListBucket 权限。

【讨论】:

    猜你喜欢
    • 2021-06-30
    • 1970-01-01
    • 1970-01-01
    • 2021-07-09
    • 2015-01-24
    • 2023-01-03
    • 2019-07-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多