我有一个问题,为了我自己的理智。下面是我的火力规则多重Inhertitance Firebase安全规则
{
"rules": {
".read": "auth != null",
".write" : false,
"users": {
"$uid": {
".read": "auth != null && auth.uid == $uid",
".write": "auth != null && auth.uid == $uid",
"tokens": {
".write": "(newData.val() < data.val())"
}
}
},
...
一部分如果我理解正确的规则规定:
- 所有用户都必须以读取任何节点
- 所有的用户不能被auth'ed写入任何节点
- 用户特定的节点:
- 为了从您自己的数据读取,你需要auth'ed,你只能读取自己的节点
- 为了写自己的用户数据,您必须auth'ed,你只能写自己的节点
- 用户/令牌节点只能递减,并且永远不会增加任何用户
有人可以确认我的假设/理解,阅读Firebase安全规则文档。
也没有人有任何好的文章或有用的提示使用模拟器!?
我不确定你是否正确,在模拟器中我能够成功写入,即使我在根目录下有“写入”:“false”。在模拟器中试一试。但是你是正确的,它不会以其他方式工作。<<如果父层次结构中的任何安全规则授予访问权限,那么它是允许的。所以你不能在父级将安全设置为TRUE,然后在子路径中撤销>> – Learn2Code
,但我的主要原因是要找出如何执行令牌规则,只允许用户减少值并且永不增加它!?你有什么想法!? – Learn2Code
@ Learn2Code:我正在使用您的规则,无法写入。你指定哪个位置? –