Je semble avoir du mal avec les règles de sécurité Firebase. J'ai lu les guides, mais les résultats du simulateur ne sont pas assez descriptifs (ce serait beaucoup plus facile si nous pouvions juste survoler un nœud, et un bouton apparaît où nous pouvons mettre à jour les règles).Règles de sécurité Firebase?
Voici ce que ma structure ressemble à:
chats
- randomChatId01
- name: "awesome chat"
- members:
- userId01 : true
- userId02 : true
- randomChatId02
- members:
- userId02 : true
- randomChatId03
- members:
- userId01 : true
- userId02 : true
- ...
Je veux seulement qu'un utilisateur soit capable de lire les noeuds de chat dans lequel le nœud enfant du nœud membres contient l'utilisateur du authentifié auth.uid.
Donc, dans ce cas, si userId01 était connecté, elle aurait seulement un accès en lecture à randomChatId01 et randomChatId03.
C'est la règle que j'ai:
{
"rules": {
"chats": {
"$chat": {
".read": "data.child('members').val().contains(auth.uid)"
}
}
}
}
Cependant, il est de retour ce qui suit dans le simulateur:
Attempt to read /chats with auth={"provider":"anonymous","uid":"eF4ztDEXz7"}
/
/chats
No .read rule allowed the operation.
Read was denied.