直接附加现有策略以以编程方式访问S3

时间:2019-07-03 20:49:19

标签: amazon-web-services amazon-s3

我正在创建一个需要以编程方式对S3进行读写访问的用户。

在“直接附加现有政策”下,有太多政策,我不知道我需要哪一个。

1 个答案:

答案 0 :(得分:1)

如果您希望授予一个IAM用户访问Amazon S3中的执行任何操作的权限,您只需附加AmazonS3FullAccess策略即可,授予​​以下权限:

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

但是,这使他们可以执行任何操作(包括删除存储桶)。通常,将为用户分配给定存储桶的特定权限,例如此内联策略

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

请注意,有些操作适用于存储桶本身,而另一些操作适用于存储桶的内容(/*)。