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

私有存储桶搭配云存储+经典LB+Cloud Armor托管静态页是否可行

方案可行性结论

该方案完全可实现,无需将存储桶开放给allUsers公开访问权限。
公开教程普遍要求存储桶开公网访问是为了简化配置步骤,跳过了负载均衡到后端存储桶的身份校验环节,这种简化配置确实会出现用户可绕过负载均衡直接访问存储桶公网URL的问题,但不是生产环境的推荐配置方式。

核心配置步骤
  • 配置私有存储桶访问权限:不要为allUsers主体授予roles/storage.objectViewer权限,仅为GCP全局外部负载均衡的系统托管服务账号授予目标存储桶的对象查看权限。该服务账号格式为service-[你的GCP项目数字ID]@gcp-sa-lb.iam.gserviceaccount.com,绑定权限后,只有经负载均衡转发的请求有权读取存储桶内对象,直接访问存储桶公网端点的请求会直接返回403,完全无法绕过负载均衡层。
  • 部署经典版全局外部负载均衡:创建后端存储桶资源,关联你存放静态前端资源的私有Cloud Storage存储桶,全程不需要开启存储桶的公网访问开关。
  • 绑定Cloud Armor边缘安全策略:将提前配置好IP白名单规则(仅放行指定AWS固定NAT IP段)的Cloud Armor边缘策略关联到上述后端存储桶,将白名单放行规则设置为最高优先级,所有非白名单IP的请求会在边缘层直接被拦截,不会触达后端存储桶。
  • 完成URL映射配套配置:在负载均衡的URL映射规则中新增路径匹配规则,将/test/*路径的请求转发到关联私有存储桶的后端,其余路径可根据业务需求路由到对应后端或直接返回404。

配置完成后建议做两项校验:

  1. 直接访问存储桶公网对象地址(格式为https://storage.googleapis.com/[存储桶名称]/test/index.html),确认返回403无权限,证明存储桶未对公网暴露;
  2. 分别从非白名单IP、白名单内的AWS NAT出口IP访问负载均衡对应路径,确认非白名单请求被Cloud Armor拦截,白名单请求可正常加载index.html内容,即符合业务要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 01:06:22