gpt4 book ai didi

amazon-web-services - 删除时拒绝 AWS S3 访问

转载 作者:行者123 更新时间:2023-12-03 16:05:38 24 4
gpt4 key购买 nike

我有一个可以毫无问题地写入的存储桶。但是,当我尝试删除对象时,出现错误...

AccessDeniedException in NamespaceExceptionFactory.php line 91

遵循非常基本的示例 here ,我想出了这个命令......
$result = $s3->deleteObject(array(
'Bucket' => $bucket,
'Key' => $keyname
));

我已经根据我发现的其他教程和问题尝试了这种变化。
$result = $s3->deleteObject(array(
'Bucket' => $bucket,
'Key' => $keyname,
'Content-Type' => $contentType,
'Content-Length' => 0
));

但一切都会产生同样的错误。有什么建议?

最佳答案

拥有写权限(一个只将数据写入 S3 的用户)和另一个用户的单独删除权限(以避免意外删除)是很常见的。
您可以检查您是否真的有权访问特定的存储桶操作,使用 iam get-role-policy API 查看您对尝试删除的角色拥有的权限。下面是一个例子:

$ aws iam get-role-policy --role-name <<your-role-name>> --policy-name <<your-policy-name>>

{
"RoleName": "myrolename,
"PolicyDocument": {
"Version": "yyyy-mm-dd",
"Statement": [
{
"Action": [
"s3:AbortMultipartUpload",
"s3:DeleteObject",
"s3:Get*",
"s3:List*",
"s3:ListBucket",
"s3:PutObject*"
],
"Resource": [
"arn:aws:s3:::bucket1/*",
"arn:aws:s3:::bucket2/*" ],
"Effect": "Allow",
"Sid": "yyyy"
}
]
},
"PolicyName": "mypolicyname"
}
最有可能在您的情况下,您可能没有该资源(存储桶/前缀)的“s3:DeleteObject”操作

关于amazon-web-services - 删除时拒绝 AWS S3 访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42658141/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com