在firebase中,我可以将权限设置为只允许对给定对象执行推送操作吗?

在firebase中,我可以将权限设置为只允许对给定对象执行推送操作吗?,firebase,Firebase,标题说明了一切。我想授予将新对象推送到给定列表样式数据库的权限,但不允许完全写入权限。在这种可能的情况下?不确定“不允许完全写入权限”是什么意思,或者标题确实说明了一切。但假设这意味着您希望能够添加记录,而不是删除或修改它们?在做出这些假设后,您可以简单地执行以下写入规则: // !data.exists(): only push once, no edits // newData.exists(): cannot delete ".write": "!data.exists()" 这正是我需

标题说明了一切。我想授予将新对象推送到给定列表样式数据库的权限,但不允许完全写入权限。在这种可能的情况下?

不确定“不允许完全写入权限”是什么意思,或者标题确实说明了一切。但假设这意味着您希望能够添加记录,而不是删除或修改它们?在做出这些假设后,您可以简单地执行以下写入规则:

// !data.exists(): only push once, no edits
// newData.exists(): cannot delete
".write": "!data.exists()"

这正是我需要知道的。谢谢很乐意帮忙!firebase.com/docs下的一些方法包括一些安全规则的例子,这些规则可能也会给你一些好主意。newData.exists()检查不是没有必要吗?如果!data.exists()那么你肯定要删除一些不存在的东西?!这似乎是多余的。你为什么大喊大叫?!.write:“newData.exists()”是否表示可以添加(允许重复)但不能删除?如果是这样的话,那么没有重复的同一个问题呢?有关此问题的变体,请参见