You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

IAM用户已配置S3 DeleteObject权限仍无法删除对象如何解决

问题根因说明

你当前配置的IAM权限已经包含s3:DeleteObject操作权限,且上传、下载对象功能正常可排除身份凭证配置错误问题,AllAccessDisabled报错通常是存储桶层面的额外限制规则导致的,可按照以下步骤排查解决:

排查&解决步骤

  • 检查存储桶策略是否存在显式拒绝规则

    IAM用户的允许权限优先级低于桶策略的显式拒绝(Deny)规则,进入S3控制台对应存储桶的「权限」标签页,查看桶策略内容,确认是否存在Effect为Deny、Action包含s3:DeleteObject的规则,如有调整对应规则即可。
  • 检查对象锁定(Object Lock)配置

    如果存储桶开启了对象锁定功能,且待删除的对象设置了保留期限或者法律保留,在保留期内对象会被禁止删除,需要先解除对应对象的保留配置后再执行删除操作。
  • 检查存储桶版本控制配置

    若存储桶开启了版本控制功能,直接调用DeleteObject接口只会给对象新增一个删除标记,不会永久删除对象,如需要永久删除指定版本的对象,需要携带版本ID执行删除,代码示例:
    s3.Object('BUCKET_NAME','fol.jpeg').delete(VersionId='你的对象对应版本ID')
    
  • 排查组织层面的服务控制策略限制

    如果你使用的是AWS Organizations组织下的子账号,联系组织管理员确认是否有服务控制策略(SCP)限制了s3:DeleteObject操作的执行权限。
  • 校验桶名与对象键的正确性

    S3的桶名、对象键均为大小写敏感,确认你代码中填写的桶名、对象键fol.jpeg和实际资源完全匹配,拼写错误也可能触发类权限报错。

可选优化项

你当前IAM策略中对象操作相关的Statement里,Resource包含了存储桶本身的ARN(arn:aws:s3:::************),对象级操作仅需要通配符格式的ARN(arn:aws:s3:::************/*)即可,可移除多余的Resource配置避免后续权限逻辑混淆。


内容的提问来源于stack exchange,提问作者py8ia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 16:54:03