Firebase-Sicherheitsregeln bieten einen robusten, vollständig anpassbaren Schutz für Ihre Daten in Cloud Firestore, Realtime Database und Cloud Storage. Mit dieser Anleitung können Sie ganz einfach mit Security Rules beginnen, Ihre Daten schützen und Ihre App vor böswilligen Nutzern schützen.
Firebase-Sicherheitsregeln-Sprache
Bevor Sie mit dem Schreiben von Regeln beginnen, sollten Sie sich die spezifische Sprache für Firebase-Sicherheitsregeln für die von Ihnen verwendeten Firebase-Produkte ansehen. Realtime Database verwendet eine JavaScript-ähnliche Syntax und JSON-Struktur für die Security Rules.
Machen Sie sich zuerst mit der Kernsyntax der Sprache für Firebase-Sicherheitsregeln vertraut.
Authentication einrichten
Falls noch nicht geschehen, fügen Sie Ihrer App Firebase Authentication hinzu. Firebase Authentication unterstützt viele gängige Authentifizierungsmethoden und lässt sich in Firebase-Sicherheitsregeln einbinden, um umfassende Überprüfungsfunktionen zu bieten.
Sie können zusätzliche benutzerdefinierte Authentifizierungsinformationen für Ihre App einrichten.
Weitere Informationen zu Firebase-Sicherheitsregeln und Firebase Authentication
Daten- und Regelstrukturen definieren
Strukturieren Sie Ihre Daten sorgfältig, damit sie Ihren Sicherheitsanforderungen entsprechen.
Daten für die Sicherheit definieren
Die Art und Weise, wie Sie Ihre Daten strukturieren, kann sich auf die Struktur und Implementierung Ihrer Regeln auswirken. Berücksichtigen Sie bei der Definition Ihrer Datenstrukturen die Auswirkungen, die sie auf Ihre Security Rules-Struktur haben könnten.
In Realtime Database können Sie beispielsweise ein Feld einfügen, das eine bestimmte Rolle für jeden Nutzer angibt. Ihre Regeln können dann dieses Feld lesen und damit rollenbasierte Zugriffe gewähren.
Berücksichtigen Sie beim Definieren Ihrer Daten- und Regelarchitekturen, wie Regeln je nach Produkt kaskadieren oder nicht. Bei Realtime Database werden Regeln von oben nach unten angewendet, wobei Regeln auf niedrigeren Ebenen Regeln auf höheren Ebenen überschreiben. Wenn durch eine Regel Lese- oder Schreibberechtigungen für einen bestimmten Pfad gewährt werden, wird auch der Zugriff auf alle untergeordneten Knoten darunter gewährt. Bei Cloud Firestore und Cloud Storage gelten Regeln dagegen nur auf bestimmten Ebenen der Datenhierarchie. Sie schreiben explizite Regeln, um den Zugriff auf verschiedene Ebenen zu steuern.
Auf Ihre Regeln zugreifen
Wenn Sie Ihre vorhandenen Security Rules aufrufen möchten, verwenden Sie entweder das Firebase-CLI oder die Firebase-Konsole. Achten Sie darauf, Ihre Regeln immer mit derselben Methode zu bearbeiten, um zu vermeiden, dass Aktualisierungen versehentlich überschrieben werden. Wenn Sie sich nicht sicher sind, ob Ihre lokal definierten Regeln die neuesten Updates widerspiegeln, wird in der Firebase-Konsole immer die zuletzt bereitgestellte Version Ihrer Firebase-Sicherheitsregeln angezeigt.
Wenn Sie in der Firebase-Konsole auf Ihre Regeln zugreifen möchten, wählen Sie Ihr Projekt aus und klicken Sie dann im linken Navigationsbereich auf Realtime Database. Klicken Sie auf Security Rules, wenn Sie sich in der richtigen Datenbank oder dem richtigen Storage-Bucket befinden.
Wenn Sie über die Firebase-Befehlszeile auf Ihre Regeln zugreifen möchten, rufen Sie die Regeldatei auf, die in Ihrer firebase.json-Datei angegeben ist.
Grundlegende Regeln schreiben
Wenn Sie Ihre App entwickeln und Security Rules kennenlernen, sollten Sie Security Rules für einige grundlegende Anwendungsfälle implementieren, darunter:
- Nur Eigentümer: Zugriff auf Inhalte nach Nutzer einschränken.
- Gemischter Zugriff:Sie können den Schreibzugriff nach Nutzer einschränken, aber öffentlichen Lesezugriff zulassen.
- Attributbasierter Zugriff: Beschränken Sie den Zugriff auf eine Gruppe oder einen Nutzertyp.
Regeln testen
Wenn Sie Ihre Firebase-Sicherheitsregeln in der Firebase Console einrichten, können Sie den Firebase Rules Playground verwenden, um das Verhalten schnell zu validieren. Wir empfehlen jedoch, die Änderungen mit dem Local Emulator Suite gründlicher zu testen, bevor Sie sie in der Produktion bereitstellen.
Regeln bereitstellen
Verwenden Sie die Firebase-Konsole oder die Firebase-CLI, um Ihre Regeln in der Produktion bereitzustellen. Folgen Sie der Anleitung unter Firebase-Sicherheitsregeln verwalten und bereitstellen.