在 Firebase 实时数据库编辑器中执行规则

Enforce Rules in Firebase Realtime Database Editor

概述

在 Firebase 中使用实时数据库时,我能够编辑和绕过规则。我知道这在某些情况下很方便,但我也想将规则应用于手动提交的数据。

例子

这是最简单的写入规则,可以禁止在任何地方写入。使用规则模拟器,我无法像预期的那样编写。

但是,即使我保存了规则,我仍然可以在我的数据库中写入

今天是我使用 Firebase 规则的第一天。我是否对规则感到困惑,或者在手动编辑器中没有禁用绕过规则的选项?

您将能够从控制台手动写入数据库(没有选项),但是使用上面的规则 ".write": "false",这意味着最终用户将无法写入数据库。

手动添加到数据库的人,通常是管理员。这就是为什么即使它是 write:false 它仍然会添加到数据库中。

但是如果你有这个:

  Class
     randomid
      Keys:values

然后将在他的 phone 中创建 class 的用户将无法向数据库发送数据,因为 write:false

即使你有这个:

  {
"rules": {
      ".read": "false",
      ".write": "false",  
   }
 }

您仍然可以在控制台中看到数据,但最终用户将无法读取或写入数据库。

删除最后一个逗号。

{
     "rules": {
         ".read": "false",
         ".write": "false"
     }
}

并发布更改,而不是测试。

注意您无论如何都可以添加值,因为您拥有该数据库并从控制台使用它。如果您从 SDK(Android、iOs、Node 等)使用它,您将无法写入数据。