Wie strukturiere ich Firebase-Daten und Regeln für den Datenaustausch zwischen Benutzern?

Momentan habe ich eine einfache ToDo-App, mit der Benutzer eine Liste erstellen und die erledigten Aufgaben abhaken können. Die Daten sind wie folgt aufgebaut: '/ acc_' + USER_ID + '/ done' und '/ acc_' + USER_ID + '/ todo'. Wenn Elemente "erledigt" sind, werden sie in die Liste "erledigt" verschoben.

Ich möchte, dass ein Benutzer eine Liste mit einem anderen authentifizierten Benutzer teilen kann.

Die Regeln sehen derzeit wie folgt aus, was zu funktionieren scheint.

{
  "rules": {
        "$userPath": {
            ".read": "auth != null",
            ".write": "auth != null",
            ".validate": "$userPath === 'acc_' + auth.id"
        }
    }
}

Ich denke, ich muss dafür sorgen, dass jeder Benutzer, der über eine Reihe genehmigter E-Mail-Adressen verfügt, dies irgendwie in die Sicherheitsregeln einbindet.

Alternativ könnte ich eine Liste im Stammverzeichnis erstellen und nur den Ersteller und die freigegebenen Benutzer darauf zugreifen lassen.

Irgendeine Anleitung?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage