I have a bucket that I can write to with no problem. However, when I try to delete an object, I get an error ...
AccessDeniedException in NamespaceExceptionFactory.php line 91
Following the very basic example here, I came up with this command ...
$result = $s3->deleteObject(array(
'Bucket' => $bucket,
'Key' => $keyname
));
I have tried variations of this based upon other tutorials and questions I have found.
$result = $s3->deleteObject(array(
'Bucket' => $bucket,
'Key' => $keyname,
'Content-Type' => $contentType,
'Content-Length' => 0
));
But everything produces the same error. Any suggestions?
User may be able to create an object in a bucket doesn't necessarily imply that the same user can deleted the object that he/she may have created.
S3 permission can be granular at the resource level (bucket/prefix) where the action that your role can take could be one or many of the permissions (see: http://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html)
It looks like you are having s3:PutObject permission but not s3:DeleteObject.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With