【问题标题】:Best Firebase rule to allow read to any user允许读取任何用户的最佳 Firebase 规则
【发布时间】:2021-02-07 14:14:18
【问题描述】:

我正在尝试为我的 firebase 项目找到最佳安全规则,它应该允许任何用户(没有帐户的用户)读取数据但又阻止用户写入。此外,该规则还必须允许登录用户读写。

附:我目前的规则已经这样做了,但 Firebase 每天都抱怨说我的规则不安全,可能会增加账单。那么安全实现我想要的最佳规则是什么? 这是我目前的规则。

rules_version = '2';
service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read : if true;
      allow write : if request.auth.uid != null;
    }
  }
}

【问题讨论】:

  • 您的问题应该包括您现在拥有的无法按您想要的方式工作的规则,并具体说明缺少的内容。
  • 您是说它已经完美运行,但 Firebase 不断向您发送您不想要的警告电子邮件?只需阻止 Firebase 电子邮件或进入 Firebase 通知设置
  • @AugustKimo 但事情是这样的,它足够安全吗?有没有更好的方法?
  • @DougStevenson 规则包括

标签: firebase google-cloud-firestore firebase-security


【解决方案1】:

问题在于 Firebase 不确定您是否完全了解任何经过身份验证的用户实际上都可以编写整个数据库。这是一个常见的错误——人们通常不理解在根级别使用通配符的含义。

您应该做的是消除通配符并调出每个特定集合以赋予其所需的特定权限。这将清楚地表明您不会盲目地为整个事情分配完全权限。

【讨论】:

    猜你喜欢
    • 2020-07-11
    • 1970-01-01
    • 2015-03-25
    • 2016-12-23
    • 2018-12-08
    • 2018-08-12
    • 1970-01-01
    • 2017-03-10
    • 1970-01-01
    相关资源
    最近更新 更多