【发布时间】:2015-03-20 17:14:00
【问题描述】:
这是我的规则:
{
"rules": {
"deck":{
".read":true,
".write":true,
".indexOn": "user"
}
}
}
目前我跑步时:
deckRef.once('value', function(dataSnapshot) {
console.log(dataSnapshot.ref());
});
我的所有数据都返回了:
{
"deck" : {
"-JkpwAnieKjQVsdtPD4m" : {
"deckName" : "Deck 1",
"user" : "simplelogin:1"
},
"-Jkq4unexm-qwhO_U2YO" : {
"deckName" : "Deck 2",
"user" : "simplelogin:1"
},
"-Jkq5-II1q5yM6w3ytmG" : {
"deckName" : "Deck 3",
"user" : "simplelogin:6"
},
"-Jks5mbMHmPB9MwnnOCj" : {
"deckName" : "Deck 4",
"user" : "simplelogin:1"
}
}
}
但我想阻止任何人访问与用户 ID 不匹配的项目。
我尝试将甲板部分更改为:
"deck": {
".read":"data.child('user').val() === auth.uid"
}
但这不会返回任何内容。理想情况下,如果用户“simpllogin:1”已登录,我希望它只返回项目 1,2 和 4,或者如果“simplelogin:6”已登录,则返回项目 3。
【问题讨论】:
标签: javascript firebase firebase-security