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

Elastic Beanstalk网站关联S3静态文件的安全权限配置咨询

S3静态文件桶安全配置方案(仅允许Elastic Beanstalk网站访问)

核心疑问解答

你截图中的公共访问阻止选项不能取消,必须全部勾选开启。这些选项是S3防止桶被意外设置为公共访问的关键防护,开启后能彻底阻断任何未经授权的公共访问路径,正好符合你“禁止无关访问”的需求。

最优权限配置步骤

1. 强制开启公共访问阻止

进入S3桶的「权限」标签,找到「阻止公共访问(桶级别)」,勾选所有四个选项并保存。这一步能从根源上杜绝公共访问的可能,避免因误操作导致文件泄露。

2. 配置桶策略,仅允许Elastic Beanstalk实例角色访问

通过桶策略精准授权,只让你的EB网站所在的EC2实例角色能读取桶内的CSS、JS文件。示例策略如下(替换占位符为你的实际信息):

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::你的AWS账户ID:role/你的ElasticBeanstalk实例角色名称"
      },
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::你的S3桶名称/*"
    }
  ]
}
  • 说明:S3默认遵循“拒绝所有未明确允许的访问”原则,所以这个策略只会授权指定的EB角色读取文件,其他任何主体都无法访问。

3. 给Elastic Beanstalk实例角色添加权限(双保险)

找到你的EB环境对应的EC2实例IAM角色,添加一条内联策略,确保角色拥有访问该S3桶的权限:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::你的S3桶名称/*"
    }
  ]
}

这一步和桶策略形成双重验证,进一步确保只有EB的网站实例能访问文件。

4. 禁用静态网站托管(可选)

如果你不需要通过公共URL直接访问这些静态文件,建议关闭S3桶的「静态网站托管」功能,减少不必要的暴露面。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 07:45:51