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

Firebase Storage规则调用Realtime Database的get()方法失效问题排查

Firebase Storage规则问题:仅允许特定权限用户访问存储文件

我尝试创建Firebase Storage规则,仅允许Realtime Database中路径/Users/{uid}/permission字段值为true的用户访问/approved/下的文件。当前使用的规则如下:

service firebase.storage {
  match /b/{bucket}/o {
    match /approved/{fileId} {
      allow read, write: if isApprovedUser();
    }
  }
}

function isApprovedUser() {
  return request.auth != null &&
         get(/databases/(default)/data/Users/$(request.auth.uid)/permission).val() == true;
}

在Firebase控制台模拟器中使用有效用户ID(dzS1gm71rhgTM4NYdZQ81MuceTp2)测试时,该路径确实存在于Realtime Database,但isApprovedUser()函数始终无法正常工作。

我已尝试以下排查步骤:

  • 反复核对路径正确性
  • 确认用户已完成认证
  • 检查Realtime Database规则(当前允许认证用户读取)
  • 尝试修改路径大小写,排查拼写错误

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 09:47:03