Firebase用户权限

时间:2017-06-24 15:12:05

标签: firebase

我有两个超级父节点,但我目前无法写入第二个节点。

<mapping class="<path>.orders.Order"/>

我希望用户能够写入自己的secondParent孩子。读写权限对于用户父节点是否正常工作,但我无法使其适用于secondParent。

我目前的规则是:

-users
    uid
        some other info
    uid
-secondParent
    child
        uid
    child
        uid

下面的模拟失败: Simulation

2 个答案:

答案 0 :(得分:1)

您必须为每个父母编写规则以启用权限

    {
  "rules": {
    "users": {
      "$uid": {
        ".read": "auth != null",
        ".write": "$uid === auth.uid",
      }
    },
    "parentdNode": {
      "$childID":{
         "$uid":{
          ".read" : "auth != null",
          ".write":  "$uid === auth.uid",
        }
      }
    }
  }
}

答案 1 :(得分:1)

根据屏幕截图,您正在尝试将{"uid":"X","property":"Y"}写入/parentNode/someNode。规则允许将{"property":"Y"}写入/parentNode/someNode/65ef..aa62

JSON树带有键/值对。您提供的方案中没有密钥uid,有一个$uid被您正在访问的路径中的值替换。

它可能仍然有点令人困惑,但我希望这指出澄清想法。