【问题标题】:aws s3 bucket policyaws s3 存储桶策略
【发布时间】:2016-01-08 10:08:33
【问题描述】:

我创建了一个简单的策略来访问经过身份验证的(访问密钥/密码)用户的特定存储桶。以下是政策

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::xxxxxxx/*"
            ]
        }
    ]
}

但用户无法访问它。如果我用“arn:aws:s3:::*”替换资源,它可以工作,但会向附加用户显示所有存储桶。

【问题讨论】:

  • 你能详细说明你想要达到什么目标吗?
  • 如问题所述,特定用户的特定降压。

标签: amazon-web-services amazon-s3 policy


【解决方案1】:

试试这个:

{
  "Statement": [
    {
      "Action": "s3:*",
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::xxxxxxx",
        "arn:aws:s3:::xxxxxxx/*"
      ]
    }
  ]
}

您需要在存储桶(/*)内授予访问权限,然后授予存储桶本身的访问权限,这是您缺少的部分。

【讨论】:

  • 是的,它有效,我已经尝试过了,但顺序不同。谢谢
  • 资源的顺序在政策中重要吗?
  • 不,资源顺序无所谓
【解决方案2】:

作为 E.J. Brennan 建议您可以将存储桶本身添加到资源列表中,但这将使用户有权删除存储桶本身。如果您只想让他们查看存储桶并能够修改其中的对象,您可以授予对存储桶的列表访问权限以及您目前拥有的权限,如下所示:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::xxxxxxx"
            ]
        },
        {
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::xxxxxxx/*"
            ]
        }
    ]
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-04-24
    • 2012-11-23
    • 2017-02-14
    • 2018-08-09
    • 1970-01-01
    • 1970-01-01
    • 2011-09-10
    • 1970-01-01
    相关资源
    最近更新 更多