разрешение безопасности firebase не работает
У меня есть данные ниже, хранящиеся в моемfirebase
:
firebaseRoot
admins
simplelogin:1:
users
simplelogin:1
email: [email protected]
picture: csd
provider: password
uid: simplelogin:1
simplelogin:2
email: [email protected]
picture: zsd
provider: password
uid: simplelogin:1
и следующие правила безопасности:
{
"rules": {
"admins": {
".read": "root.child('admins').child(auth.uid).val() === true",
".write": "root.child('admins').child(auth.uid).val() === true"
},
"users": {
"$user":{
".read": "$user === auth.id || root.child('admins').child(auth.uid).val() === true",
".write": "$user === auth.id"
}
}
}
}
Мои требования к авторизации приведены ниже.
Администраторы могут читать и добавлять только существующие администраторы. Это работает.Все пользователи могут быть прочитаны администратором, но не должны иметь возможность записывать пользовательские данные.пользователь может читать и обновлять свои собственные данные пользователя.В настоящее время с вышеуказанными правилами я не могу читать данные пользователей как для администраторов, так и для зарегистрированных пользователей. Я получаю сообщение об ошибке ниже. Пожалуйста, предоставьте вашу помощь. Благодарю.
var rootRef = new Firebase('https://xxxxx.firebaseio.com/');
var users = rootRef.child('users');
users.on('value', function(snap) {
console.log(snap.key(), snap.val());
}, function(error) {
console.log(error);
});
Ошибка:
Ошибка: license_denied: у клиента нет прав доступа к нужным данным.