S3 "Access Denied"到存储桶



我尝试允许我们的一个开发人员(myapp-dev1(访问一个显式S3-Bucket。

  1. 我创建了一个策略,该策略应该允许 CRUD 选项(他应该能够将图像文件写入和读取到该存储桶中,并且只能写入该存储桶。

    "s3:PutObject",
    "s3:GetObject",
    "s3:DeleteObject",
    "s3:ListObjects"
    
  2. 我创建了一个名为 dev1 的用户,并将他分配给该新策略(该用户不在组中,也没有角色(

  3. 我创建了一个名为 ARN: arn:aws:s3:::myapp-dev1-bucket
  4. 然后在这个存储桶中,我切换到"存储桶策略"并使用"策略生成器"并允许当时的每个操作。到目前为止,所有其他设置都失败了,这个也失败了。它看起来像这样:

    {
      "Id": "Policy123456789",
      "Version": "2012-10-17",
      "Statement": [
        {
           "Sid": "Stmt123456789",
           "Action": "s3:*",
           "Effect": "Allow",
           "Resource": "arn:aws:s3:::myapp-dev1-bucket",
           "Principal": {
              "AWS": [
                  "arn:aws:iam::1234567890:user/myapp-dev1"
               ]
           }
        }
      ]
    }
    

但我仍然得到一个

Excon::错误::禁止访问: 预期(200( <=> 实际(403 禁止访问(

  • 我做错了什么?
  • 我错过了什么?
  • 是否还必须允许用户列出存储桶?

请帮忙!

试试这个,

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

相关内容

  • 没有找到相关文章

最新更新