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

如何为S3桶中所有子文件夹内的对象开启公共GetObject权限?

S3子文件夹对象公共访问策略可行性解答

你提出的策略是可行的,可以实现为next-level-folder下所有子文件夹内的对象开启公共GetObject权限,无需逐个指定子文件夹路径。

策略细节说明

你给出的Resource字段 arn:aws:s3:::bucket-name/next-level-folder/*/* 的作用如下:

  • 第一个*:匹配next-level-folder下的任意子路径(包括直接子文件夹、嵌套子文件夹的完整前缀)
  • 第二个*:匹配对应子路径下的所有对象(包括深层嵌套的文件)

这意味着:

  • 会允许访问next-level-folder/folder1/file.txt、next-level-folder/folder1/sub/file.txt这类子文件夹内的对象
  • 不会允许访问直接存放在next-level-folder根目录下的对象(比如next-level-folder/root-file.txt),正好符合你“仅子文件夹内对象开放”的需求

关键注意事项

  • 公共访问设置检查:确保你的S3桶未开启Block Public Access中阻止公共策略生效的选项(比如Block public access to buckets and objects granted through new public bucket policies),否则策略会被拦截。
  • 安全风险:Principal: "*"意味着所有人都能访问这些对象,确认这是你预期的访问范围,避免敏感数据泄露。
  • 扩展性:后续新增的子文件夹会自动被该策略覆盖,无需手动更新Resource列表,完美适配你大量子文件夹的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 18:35:40