使用策略限制对AWS S3的访问不能按预期工作

时间:2016-09-16 08:22:07

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

我有一个用户组,我们将其用于AWS中的某个环境。 我们试图将该组的访问权限仅限于特定的S3存储桶。

所以,我创建了一个如下政策:

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

如果我使用AWS策略模拟器,则所有节目都按预期显示(至少看起来像这样)。 但是,通过使用该组中用户的API密钥的应用程序,我在上传文件时会被拒绝访问。

我做错了什么?

这给出了相同的结果

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:GetObjectVersion",
                "s3:DeleteObject",
                "s3:DeleteObjectVersion"
            ],
            "Resource": [
                "arn:aws:s3:::staffila-staging",
                "arn:aws:s3:::staffila-staging/*"
            ]
        }
    ]
}

1 个答案:

答案 0 :(得分:1)

使用此政策可行。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": ["s3:ListBucket"],
      "Resource": ["arn:aws:s3:::staging"]
    },
    {
      "Effect": "Allow",
      "Action": [
        "s3:PutObject",
                "s3:GetObject",
                "s3:GetObjectVersion",
                "s3:DeleteObject",
                "s3:DeleteObjectVersion"
      ],
      "Resource": ["arn:aws:s3:::staging/*"]
    }
  ]
}