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

如何通过存储桶策略限制Amazon S3指定文件夹仅允许上传特定后缀文件

S3存储桶策略解决方案

符合需求的策略配置

你原来的策略问题出在Deny语句的范围覆盖了全桶,我们调整为仅针对指定前缀下的非允许后缀上传触发拒绝,不影响其他路径的上传权限,完整策略如下:

{
  "Version": "2012-10-17",
  "Id": "RestrictSpecificFolderFileType",
  "Statement": [
    {
      "Sid": "DenyInvalidFileTypeInTargetFolder",
      "Effect": "Deny",
      "Principal": "*",
      "Action": "s3:PutObject",
      "NotResource": [
        "arn:aws:s3:::DOC-EXAMPLE-BUCKET/folder/*.csv",
        "arn:aws:s3:::DOC-EXAMPLE-BUCKET/prefixname/*.jpg"
      ],
      "Condition": {
        "StringEquals": {
          "aws:PrincipalAccount": "111111111111"
        },
        "StringLike": {
          "s3:prefix": "folder/*"
        }
      }
    }
  ]
}

配置说明

  • 仅保留Deny语句即可,无需额外的Allow语句:只要你IAM侧已经给账号内身份授予了对应S3桶的上传权限,本策略只会对指定前缀下的文件类型做限制,不会拦截其他路径的合法上传请求
  • aws:PrincipalAccount条件限制规则仅对你指定的AWS账号生效,刚好满足账号级别的权限配置需求,不需要单独针对每个IAM用户/角色设置规则
  • 如果需要限制多个不同前缀的文件类型,可新增多条Deny语句,每个语句对应一组前缀+允许后缀的规则

注意事项

  1. 请将策略中的111111111111替换为你的实际AWS账号ID
  2. 替换DOC-EXAMPLE-BUCKET为你的S3存储桶名称
  3. 替换folder为你需要限制的目标前缀,允许的后缀可自行添加到NotResource数组中

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 23:06:01