0

我正在 Visual Studio 中设置 aws 工具包。我创建了一个将用于开发的 IAM 用户。但是对于我配置的 IAM 用户,我看到它在资源管理器中看不到 S3 存储桶。它给出“拒绝访问”。

这是分配给 IAM 用户的自定义角色:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AllowListing",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket"
            ],
            "Resource": "arn:aws:s3:::dev-buckets"
        },
        {
            "Sid": "AllowReadWriteDel",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:DeleteObject"
            ],
            "Resource": "arn:aws:s3:::dev-buckets/*"
        }
    ]
}

我可以让它工作的唯一方法是向IAM 用户添加“ AmazonS3FullAccess ”策略。但随后它会暴露帐户中的所有存储桶。不仅仅是为开发人员准备的存储桶。

是否可以使用自定义策略?我是新手,所以提前道歉。

4

1 回答 1

0

尝试列出存储桶时,您不能只列出特定的存储桶。

我认为以下政策应该可以帮助您:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                        "s3:GetBucketLocation",
                        "s3:ListAllMyBuckets"
                      ],
            "Resource": "arn:aws:s3:::*"
        },
        {
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::dev-buckets",
                "arn:aws:s3:::dev-buckets/*"
            ]
        }
    ] 
}
于 2021-10-02T08:14:16.773 回答