AWS 根用户权限在 S3 存储桶策略上被拒绝

AWS Root User Permission Denied on S3 Bucket policy

我通过 Web 向导在 AWS S3 上创建了一个新存储桶。 我以根用户身份登录

我正在尝试添加一个 Bucket policy 如下

{
    "Version": "2012-10-17",
    "Statement": [{
        "Sid": "AddPerm",
        "Effect": "Allow",
        "Principal": "*",
        "Action": [
            "s3:GetObject"
        ],
        "Resource": [
            "arn:aws:s3:::<my-bucket-name-is-here>/*"
        ]
    }]
}

我在 Web 编辑器和 CLI 中都被拒绝了权限

网络工具

命令行界面 An error occurred (AccessDenied) when calling the PutBucketPolicy operation: Access Denied

在 IAM 设置中,根用户具有完全访问权限

    "Statement": [
        {
            "Effect": "Allow",
            "Action": "*",
            "Resource": "*"
        }
    ]

我加了

        {
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": "*"
        }

我也试过添加

        {
            "Sid": "ModifyBucketPolicy",
            "Action": [
                "s3:GetBucketPolicy",
                "s3:PutBucketPolicy"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::<MY-BUCKET-NAME>*"
        },

我还是没有权限

感谢 @JohnRotenstein 我看到因为我接受了来自 AWS 的默认“阻止所有 Public 访问”,所以我无法编辑存储桶策略。这是有道理的,因为存储桶策略也可以控制访问,因此可能会发生冲突。

但是,错误消息令人困惑,因为它没有提到阻止更新的事实是 Block public access (bucket settings)。指出 access denied / you don't have permissions 的错误消息让我认为是我用户的 IAM 设置阻止了我修改资源。