我想为托管在 Google Cloud Storage 上的网站添加基本身份验证。该网站已连接到负载均衡器,并具有有效的 SSL 证书和 CDN。
基本身份验证就足够了,但 Storage 不支持 htaccess。签名 URL 效果很好,但只适用于单个文件,不适用于整个网站。Identity-Aware Proxy 目前不支持 Storage 上的网站。
解决方案将仅用于保护舞台环境免受外界影响。它应该被设计为给我们的团队和客户提供一个简单的入口。
您会推荐什么解决方案?
答案1
我了解您正在使用 HTTP(S) 负载均衡器后面的后端存储桶。
目前,访问后端的对象时,无法在负载均衡器级别设置权限或身份验证检查。
但您可以使用“acl”命令来设置存储桶权限或通过Google 控制台。例如,要使存储桶公开可读,以便可以通过负载均衡器提供服务,您需要为 AllUsers 添加读取权限:
gsutil acl ch -u AllUsers:R gs://BUCKET
还有其他设计选择可以实现您控制对 Cloud Storage 存储桶的访问的最初目标,例如Python 2 的用户 API,云存储身份验证, 或者托管静态网站。例如,您可以在前端设置身份验证,并且只代理经过适当授权的请求。不过,这需要一些额外的编码。
你也可以使用 Cloud Armor 为负载均衡器设置安全策略。