Firebase数据库规则 - 如何模拟树中的键是否存在,例如hasOwnProperty

时间:2017-04-05 18:38:55

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

我正在深入研究Firebase实时数据库的Firebase安全规则,并且我有一个设计如下的树:

端点:/projects/${projectId}

{
  "name" : "A Fun Project",
  "users" : {
    "zjy846p8q1TgdTLxjdFr9DVvxa53" : {
      "role" : "admin"
    }
  }
}

我有什么方法可以利用我的规则来做这样的事情吗?

{
  "rules": {    
    "projects": {
      "$projectId": {
        ".read": "auth !== null && data.child('users').child(auth.uid).key === auth.uid"
      }
    }
  }
}

提前致谢!

1 个答案:

答案 0 :(得分:0)

我需要使用.hasChild(auth.id)

以下是我更新的规则:

{
  "rules": {    
    "projects": {
      "$projectId": {
        ".read": "auth !== null && data.child('users').hasChild(auth.uid)"
      }
    }
  }
}