2017-10-18 17 views
1

Pour simplifier la compréhension, je vais simplifier ma structure Firebase.Définir la règle d'authentification dans Firebase

Users/uid/randonUidClub 

Clubs/randonUid/users/uidUsers 

J'ai besoin d'accorder lecture et en écriture à Clubs uniquement pour Users authentifié et que leurs UIDs sont à users/uidUsers.

Quelqu'un peut-il m'aider à définir cette règle?

Répondre

2

Je pense que vous dire ceci:

{ 
    "rules": { 
    "clubs": { 
     "$clubId": { 
     ".read": "auth != null && data.child('users').hasChild(auth.uid)", 
     ".write": "auth != null && data.child('users').hasChild(auth.uid)" 
     } 
    } 
    } 
} 

Avec cette règle, vous ne pouvez lire un club (/clubs/{clubId}) si vous êtes authentifié et si l'UID utilisateur actuel existe dans /clubs/{clubId}/users

fonctionne avec les données de l'échantillon:

+ clubs 
    + 1 
    + users 
     + 02a13901-f145-4ac6-870d-9f91e5eed7ed 
     + id: "02a13901-f145-4ac6-870d-9f91e5eed7ed" 
+0

Merci ... Je vais le tester plus tard et le vérifier –

+0

Avez-vous vérifié? –

+0

merci beaucoup! Cela a fonctionné exactement comme je le voulais! –