这是我一直收到的错误:
A client error (AccessDenied) occurred when calling the ListObjects operation: Access Denied
我已经对我的凭据进行了三次检查,并将此错误用Google搜索到了我的智慧'结束。我编辑了我的存储桶策略以添加s3:ListBucket操作,但无济于事。当我这样做时,它只会返回一条类似的消息:
A client error (AccessDenied) occurred when calling the ListBuckets operation: Access Denied
思考?这也是我第一次创建一个s3水桶,所以很可能我错过了一些重要的步骤。
我已经对我的密钥进行了三次检查,甚至尝试创建一个额外的用户(编辑存储桶权限以允许经过身份验证的用户)。始终返回相同的错误。
非常非常感谢任何帮助或见解。谢谢!
答案 0 :(得分:7)
在我收到与您相同的(第二个)错误后,我发现了这个问题:
$ aws s3 ls
A client error (AccessDenied) occurred when calling the ListBuckets operation: Access Denied
事实证明,您需要添加specific policy permission才能列出所有可用的存储分区:
{
"Sid": "AllowListingOfAllBuckets",
"Effect": "Allow",
"Action": [
"s3:ListAllMyBuckets"
],
"Resource": [
"arn:aws:s3:::*"
]
},
由于你没有说明你正在运行哪个命令来产生错误,我不能说这是否对OP有帮助,但希望它能帮助那些偶然发现这个帖子的人在同样的情况下我
答案 1 :(得分:5)
我有一个非常类似的问题。我的用户有S3FullPermissions,我可以创建存储桶并列出所有这些:
aws s3 mb s3://my-bucket
make_bucket: s3://my-bucket/
aws s3 ls
2017-03-24 12:30:34 my-bucket
但是当我试图跑步时:
aws s3 ls s3://my-bucket
A client error (AccessDenied) occurred when calling the ListObjects operation: Access Denied
错误本身与我使用的 awscli版本相关,而不是我的存储桶/用户/策略的任何错误配置。为了解决这个问题,我删除了我的发行版存储库中安装的awscli软件包,并使用pip 安装了它:
# apt-get remove awscli
# pip install awscli
希望这可以帮助处于类似情况的人,我浪费了几个小时试图猜测这里发生了什么。