【发布时间】:2017-05-03 02:11:02
【问题描述】:
我试图让我的 firebase 实时数据库规则运行正确,但单个属性规则有问题。
我的 firebase 对象看起来像这个例子
"products": {
"KUg68BknfYWuEjAKla5": {
"cat": "Pizzas",
"likes": 132,
"item_price": 39.9,
"item_price_single": 39.9,
"name": "Mussarela",
"observation": "",
"product_id": "-KUg68BknfYWuEjAKla5",
"product_image": "massapan-mussarela.jpg",
"quantity": 1
}
我对这个对象的规则现在看起来像这样
"products": {
".read": true,
".write": "root.child('users').child(auth.uid).child('admin').val() == 'user_is_admin'"
".indexOn": ["status", "categoryId"]
},
所以基本上我允许每个人都可以读取对象,但只有管理员可以写入对象。我的问题是单个属性“喜欢”需要每个经过身份验证的用户都可以写入。我通常会用 ".read": "auth != null", 来做,但我不知道如何将它们组合到我的规则中。我可以用 .write 设置多行吗?我需要将它们组合成一行吗?我尝试了所有我能想到的方法,但没有成功。
提前谢谢
【问题讨论】:
标签: firebase firebase-realtime-database firebase-authentication firebase-security