如果作者的 ID 在节点中,则 Firebase 允许在节点中写入

Firebase allowing writes in node if writer's ID in the node

我有一个简单的数据库结构,群组成员可以在其中向群组添加另一个用户。 例如 用户 A 创建了群组 "Coffee Lovers"。 只有用户 A 可以向组中添加人员。 用户 B 现在在该组中。 这也允许 B 邀请。

group-members:{
  "-k3ajsdfklje":{ // This is group id
    groupName: "Coffee Lovers",
    members:{
      "kjk2139_erjw92": true,  // This is member A
      "fekjfqlwke,x9q": true   // This is member B
    }
}
users:{ // Users node.
    kjk2139_erjw92:{
       name:"User A"
    },
    fekjfqlwke,x9q:{
       name:"User B"
    },
    jfkdjklfjklern:{
       name:"User C"
    }
}

用户 A ("kjk2139_erjw92") 可以将任何人添加到组中。 用户 B ("fekjfqlwke,x9q") 可以将任何人添加到组中。 用户 C ("jfkdjklfjklern") 无法将任何人添加到该组。

我不确定我应该如何围绕这个建立数据库规则。

group-members:{
   "$groupId":{
      members:{
        ".read": true, // This list is publically available
        ".write": "user who is trying to write is authenticated and is included in this list"
        // TODO: I don't know how to write this ".write" part!
      }
    }
}

你可以试试

".write": "data.child(auth.uid).exists()"