更新:
这是我的Firebase数据库结构的样子,它具有两个主要节点结果和调查,如图所示”
这些是我当前的规则:
{
"rules": {
"surveys": {
".indexOn":["userId"],
".read": true,
".write": "auth.uid != null"
},
"results": {
".read": "auth.uid != null",
"$resultid": {
".write": true
}
}
}
}
基本上,当用户进行新调查时,将其存储在调查表中,现在,只有经过身份验证的用户才可以写模板,因此它非常好,现在是阅读部分,现在任何人都可以阅读整个调查节点,我无法在其中添加auth!= null,因为当有人共享他们的调查时,即使未经身份验证的用户也应该能够读取并执行该特定调查,所以我应该做些什么,以免所有人都阅读整个调查调查节点,但只有他们应该阅读的节点,否则任何人都可以通过拉起所有ID来执行任何人的调查。顺便说一下,$ resultid规则不起作用,现在仍然允许写访问:(
答案 0 :(得分:0)
您能得到的最接近的
{
"rules": {
"surveys": {
".read": "auth != null",
"$surveyid": {
".read": true,
".write": true
}
}
}
}
这些规则:
更新
对于结果,然后添加:
"results": {
".read": "auth != null",
"$resultid": {
".write": true
}
}