1

Ich entwickle gerade eine App, die ein Server-Backend benötigt, um Daten zwischen Geräten und auch Freunden zu synchronisieren. Während ich also nachforschte, ob ich meinen eigenen Server bauen sollte (was ich lieber nicht machen würde), stolperte ich über Firebase.Teilen von Daten mit Freunden auf Firebase

Was ich nicht herausgefunden habe, ist wie öffentliche Daten sind. Wie ich es verstanden habe, ist das, was ich sende, für jeden Nutzer meiner App sichtbar. Ich habe gesehen, dass Sie Regeln definieren können wie "Der Benutzer muss angemeldet sein", aber kann ich angeben, dass ein bestimmtes Kind nur für den Benutzer sichtbar sein soll, der es erstellt hat? Und gibt es eine Möglichkeit, einen anderen Benutzer zur Mitarbeit an diesem Kind einzuladen? So dass jetzt nur der Schöpfer und der eingeladene Benutzer dieses Kind sehen können?

Meine App würde am Anfang auf iOS laufen, aber ich denke, das ist nicht relevant für meine Frage, oder?

Antwort

4

Ja, Sie können das tun, können Sie Sicherheitsregeln festgelegt nur den Benutzer mit einer bestimmten UID (User-ID Feuerbasis) zu ermöglichen, Daten wie in diesem Beispiel zu schreiben oder zu lesen ...

"users": { 
    "$uid": { 
    ".read": "auth != null && auth.uid == $uid" 
    } 
} 

auch mit benutzerdefinierten Authentifizierung Sie Ihre benutzerdefinierten erstellen behauptet unterschiedliche Zugriffsebenen (zB admin, editor..etc)

Beispiel ...

"frood": { 
    // A towel is about the most massively useful thing an interstellar 
    // hitchhiker can have 
    ".read": "auth.hasEmergencyTowel === true" 
} 

zu gewähren und für die Einladung zur Teilnahme .. Sie können auch die Erlaubnis erteilen, indem er einen untergeordneten Knoten als Referenz wie in diesem Beispiel mit ...

".read": "data.child(auth.uid).exists()", 

Im letzten Fall .. wenn der angeforderten Daten Pfad ein Kind Schlüssel vorhanden, der auf die uid gleich versucht, es von dem Client für den Zugriff werden die Informationen der Lage sein, die Daten zu lesen,

alle detaillierten Informationen finden sie hier:

https://firebase.google.com/docs/database/security/user-security#section-revisiting-advanced-example

Verwandte Themen