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

Firebase Realtime Database收到Test Mode 5天过期警告该如何处理?

这个安全警告的实际含义
  • 当初你创建Realtime Database时选择Test Mode启动,Firebase自动配置的规则带固定时间锁:允许任意来源的请求无限制读写30天,到期后自动切换为完全拒绝所有客户端请求的锁死状态,没有平滑过渡的中间模式。
  • 目前距离这个锁死时间还有5天,到期后不管你的项目代码逻辑是否正确,所有从前端发往数据库的请求都会被直接拦截,项目会直接连不上数据库。
  • 你点开编辑规则看到的带注释的旧代码,标注的就是这个默认30天的到期时间,不需要逐行拆解调整,可以直接整体替换。
匹配你当前学习阶段的可落地方案

你现在是跟着课程做项目,还没学到授权模块、只有自己一个用户访问,不需要立刻上复杂的权限体系,直接用下面的临时方案解决到期锁死的问题,完全不打乱学习进度:

  1. 打开你收到邮件里的「编辑规则」入口,把页面里默认的旧Test Mode代码全部删掉
  2. 把下面这段规则复制进去,注意替换里面的毫秒时间戳:
{
  "rules": {
    // 把下面两个时间戳替换成你需要的过期时间(从当前时间往后推算即可,比如课程还有2个月就选往后60天的时间)
    ".read": "now < [你算出的毫秒级Unix时间戳]",
    ".write": "now < [你算出的毫秒级Unix时间戳]"
  }
}
  1. 点发布保存规则就完成了

这个方案的效果:

  • 在你设置的过期时间之前,数据库的读写体验和之前的Test Mode完全一致,不会卡你跟着课程写代码的进度
  • 到达你设置的过期时间后,规则会自动切回完全锁死的状态,不会无期限把数据库暴露在公网下留安全隐患
  • 完全不需要提前学习Firebase授权相关的内容,和你当前的学习进度完全匹配
几个容易踩的坑
  • 不要照搬网上Firestore的规则教程:你用的是Realtime Database,两者的规则语法、代码结构完全不兼容,复制粘贴过去会直接报错无法保存
  • 不要为了图省事把规则写成永久开放(也就是.read: true、.write: true不带时间限制):这种无限制开放的配置会被全网的数据库扫描工具盯上,大概率会被恶意删掉数据、塞入垃圾广告
  • 改完规则立刻就能生效,不需要等24小时的安全扫描周期,你可以直接在规则页面用自带的请求模拟功能,测试读写请求是否能正常通过
  • 等后续课程讲到授权模块时,再把规则升级为细粒度权限配置,不要直接用那种“所有登录用户可读写整个数据库”的粗粒度规则,这类规则权限过大,不符合Firebase的安全规范

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.22 17:06:04