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

如何为Firebase Storage设置图片域名访问限制?

如何通过Firebase Storage安全规则限制图片访问域名

要实现仅允许指定域名(如example1.com)访问Firebase Storage中的图片,你可以修改Storage安全规则,利用request.origin字段校验请求的来源域名。以下是具体实现方案:

完整安全规则示例

rules_version = '2';
service firebase.storage {
  match /b/{bucket}/o {
    match /{allPaths=**} {
      // 允许指定域名及本地开发环境访问
      allow read: if 
        request.origin == "https://example1.com" || 
        request.origin == "https://www.example1.com" || // 支持www前缀域名
        request.origin == "http://localhost:3000"; // 本地开发调试用,上线可移除
      // 禁止所有写操作(可根据自身需求调整)
      allow write: if false;
    }
  }
}

规则细节说明

  • request.origin:仅在网页通过标签(如<img>)引用图片时会携带该字段,值为发起请求的页面完整域名(包含http/https协议、端口号)
  • 多域名兼容:用||运算符可添加多个允许的域名,比如同时支持带www和不带www的版本
  • 开发环境适配:添加localhost相关规则,方便本地调试时正常加载图片,正式上线后可按需删除

注意事项

  • 直接在浏览器地址栏输入图片链接访问时,request.origin会为空,这类请求会被规则拦截。如果需要允许直接访问,可额外添加request.origin == null的判断,但会降低安全性,不建议使用
  • 确保域名拼写完全正确,包括协议类型(http/https)和端口号(本地开发场景)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 17:40:30