在firebase中,我应该编写哪些安全规则以仅允许推送到对象

use*_*853 4 security firebase firebase-security

我在root中有message对象,它只是字符串数组.我想允许用户推送新对象.如果他们可以推送到root消息,他们应该具有写权限,这意味着他们可以轻松地用其他有效数据替换整个消息对象.我应该写什么样的安全规则来避免这种情况?

Sae*_* D. 6

如果数据不存在,您可以编写规则以允许添加数据,但可以使用以下规则阻止数据被修改或删除.

".write": "!data.exists() && newData.exists()"
Run Code Online (Sandbox Code Playgroud)

'data'变量是Firebase中的当前数据.如果允许写入,'newData'是结果数据.

有关更详细的说明,请查看安全和规则API.


Tho*_*orf 5

应阅读完整的规则定义

{
   "rules": {
        ".read": false,
        "feedback": {
            "$key": {
               ".write": "!data.exists()"
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这可以让你推动该/feedback位置.您可以自由选择变量名称$key