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

S3存储桶禁止根目录上传文件的策略配置问题求助

S3存储桶限制根目录上传的正确配置

你之前的桶策略报错,核心原因是**s3:prefix条件键不支持s3:PutObject操作**——这个条件键主要用于列表类操作(比如s3:ListBucket),上传对象时需要检查的是对象本身的键路径,得用s3:object-key条件键来实现限制。

下面是能实现需求的正确桶策略:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AllowPutObjectOnlyInSubfolders",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::nh-test-01/*",
            "Condition": {
                "StringLike": {
                    "s3:object-key": "*/*"
                }
            }
        }
    ]
}

策略说明

  • Resource指定为arn:aws:s3:::nh-test-01/*,确保只能操作桶内的对象(不包括桶本身)
  • Condition通过StringLike匹配s3:object-key包含至少一个斜杠的情况,也就是强制文件必须存入子文件夹(比如folder1/file.txt符合要求,file.txt不符合)

另外要注意:如果你的IAM用户/角色还有其他允许根目录上传的权限策略,需要一并调整,否则会覆盖这个桶策略的限制。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 05:34:57