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

无用户登录的React Native应用如何保障Firebase Realtime Database安全

无用户登录体系下的Firebase实时数据库安全调整方案
  • 优先使用Firebase匿名登录做权限校验
    该方案完全不会影响现有无需用户名密码进入应用的逻辑,认证过程全静默无感知。首先在Firebase控制台开启匿名登录功能,在应用启动时自动调用匿名登录接口完成认证,再请求数据库数据即可。
    调整后的规则如下:
    {
      "rules": {
        ".read": "auth != null",
        ".write": false
      }
    }
    
  • 缩小权限开放范围,避免全库可读
    不要开放根目录的读权限,仅开放存储词汇的对应节点权限,假设你存储词汇的节点名为vocabulary,规则调整如下:
    {
      "rules": {
        "vocabulary": {
          ".read": "auth != null"
        },
        ".write": false
      }
    }
    
  • 叠加App Check验证拦截非法请求
    开启Firebase App Check功能,可验证请求是否来自你自己的应用,拦截爬虫、第三方恶意调用,规则可进一步调整为:
    {
      "rules": {
        "vocabulary": {
          ".read": "auth != null && request.appCheck.valid == true"
        },
        ".write": false
      }
    }
    
  • 可选:增加查询限制防数据爬取
    如果不想接入任何认证逻辑,可通过规则限制单次查询的返回条数,避免全库数据被一次性爬走。比如你单次仅加载1条词汇,可设置最高返回10条的限制:
    {
      "rules": {
        "vocabulary": {
          ".read": "query.limitToFirst <= 10"
        },
        ".write": false
      }
    }
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 22:45:04