AWS同一S3存储桶内复制文件时触发AccessDenied访问被拒绝错误
AWS S3同存储桶复制文件触发CopyObject AccessDenied错误排查方案
你执行的操作命令为:aws s3 cp s3://bucket1/files/qa/test/ac.png s3://bucket1/qa/temp/ac.png
返回报错如下:
调用CopyObject操作时出现AccessDenied错误,提示访问被拒绝
可按以下顺序逐一排查问题:
- 检查执行命令身份的IAM权限,必须同时包含源路径的s3:GetObject权限和目标路径的s3:PutObject权限,如果仅配置了其中一项会触发该报错
- 如果存储桶开启了KMS默认加密,需要额外给执行身份配置源对象对应的KMS密钥的kms:Decrypt权限,以及目标路径加密用KMS密钥的kms:GenerateDataKey、kms:Encrypt权限
- 检查存储桶的桶策略,确认没有规则禁止当前身份读取源路径、写入目标路径,也没有限制CopyObject操作
- 检查源文件的所有权:如果源文件是其他AWS账号上传的,且没有给存储桶所属账号开放读取权限,即使你是存储桶管理员也无法读取该文件触发复制
- 如果你使用的是STS临时凭证执行操作,需要检查会话策略是否限制了S3相关操作权限
- 检查存储桶是否配置了ACL、对象锁、访问点策略、VPC端点策略,以上规则如果存在限制读写的配置也会触发访问拒绝
内容的提问来源于stack exchange,提问作者Saurav
相关产品推荐
相关产品推荐

