运行 AWS TransferUtility 需要哪些权限?

运行 AWS TransferUtility 需要哪些权限?

使用 AWS .NET SDK TransferUtility,我可以使用自己的访问密钥 ID 下载文件,但是当我设置具有只读访问权限的受限用户时,出现“远程服务器返回错误:(403)禁止”错误。

我已经为用户设置了预配置的arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess策略:

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

它还需要哪些权限?当请求失败时,我如何才能准确了解失败的原因?

答案1

这有助于解决问题:https://aws.amazon.com/premiumsupport/knowledge-center/s3-troubleshoot-403/

S3 存储桶可以使用 AWS KMS 加密,如果是这样,那么除了AmazonS3ReadOnlyAccess策略之外,还需要向用户授予以下权限:

"Action": [
    "kms:Encrypt",
    "kms:Decrypt",
    "kms:ReEncrypt*",
    "kms:GenerateDataKey*",
    "kms:DescribeKey"
]

相关内容