Данные структурированы следующим образом:
leads
|__(ID)
|__name
|__email
|__userID
Текущее правило пожарной базы:
{
"rules": {
"leads": {
".indexOn": ["userID"],
".read": "auth !== null",
".write": "auth !== null"
}
}
Это защищает данные, только если пользователь не вошел в систему. Я хотел бы добавитьдополнительный уровень защиты, чтобы гарантировать, что вошедший в систему пользователь не может прочитать никаких отведений, где auth.uid !== userID
, но у меня возникают проблемы с его структурированием выше.
Я думал, что это будет работать, но родительский ".read": "auth !== null"
, кажется,переопределить его.
{
"rules": {
"leads": {
".indexOn": ["userID"],
".read": "auth !== null",
".write": "auth !== null",
"$id": {
".read": "data.child('userID').val() === auth.uid"
}
}
}
}