Firebase规则定位除

时间:2017-09-05 11:29:04

标签: firebase firebase-realtime-database firebase-security

我正在尝试编写一个firebase规则来定位除给定位置之外的所有属性。数据存储如下

users: {
  userId: {
    property1: some_string,
    property2: some_string,
    property3: some_string
  }
}

我想创建一个read规则,该规则始终允许阅读property1,并且只有在用户通过身份验证后才允许阅读property2property3

我怎样才能写出这样的规则?

我想我可以单独为每个属性编写规则,但我想知道是否有更简单的方法来捕获all except few用例。

1 个答案:

答案 0 :(得分:0)

Firebase安全规则不能用于过滤数据。读操作总是失败或成功。它们永远不会只返回节点的一部分。

如果您希望将用户配置文件的某些属性设置为可公开读取,而其他属性仅对经过身份验证的用户可读,则应将公开可读的属性放入单独的顶级节点中。

有关此问题的更多示例,请参阅: