Firebase Security Rules bieten einen robusten, vollständig anpassbaren Schutz für Ihre Daten in Cloud Firestore, Realtime Database und Cloud Storage. Sie können ganz einfach mit Security Rules beginnen, indem Sie die Schritte in dieser Anleitung ausführen. So schützen Sie Ihre Daten und Ihre App vor böswilligen Nutzern.
Die Firebase Security Rules Sprache
Bevor Sie Regeln schreiben, sollten Sie sich die spezifische Firebase Security Rules Sprache für die von Ihnen verwendeten Firebase-Produkte ansehen.
Realtime Database verwendet eine JavaScript-ähnliche Syntax und JSON-Struktur für seine
Security Rules. Cloud Firestore und Cloud Storage verwenden hingegen eine Obermenge
der Common Expression Language (CEL), die auf Cloud Firestore und Cloud Storage
Anweisungen basiert, mit denen eine Bedingung für den Zugriff auf einen definierten Pfad festgelegt wird.matchallow
Weitere Informationen zur Firebase Security Rules Sprache.
Authentication einrichten
Wenn Sie es noch nicht getan haben, identifizieren Sie Ihre Nutzer mit Firebase Authentication. Firebase Authentication unterstützt viele gängige Authentifizierungsmethoden und lässt sich in Firebase Security Rules einbinden, um umfassende Überprüfungsfunktionen zu bieten.
Sie können zusätzliche benutzerdefinierte Authentifizierungsinformationen für Ihre App einrichten.
Weitere Informationen zu Firebase Security Rules und Firebase Authentication.
Daten- und Regelstrukturen 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önnen.
In Cloud Firestore 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 verwenden, um rollenbasierten Zugriff zu gewähren.
Wenn Sie Ihre Daten- und Regelarchitekturen definieren, denken Sie daran, dass, wenn eine Regel Zugriff auf ein Dataset gewährt, Firebase Security Rules Zugriff auf dieses Dataset gewährt. Mit anderen Worten: Sie können den Zugriff auf einen Unterpfad nicht weiter einschränken, wenn Sie Zugriff auf einer höheren Ebene in Ihrer Datenhierarchie gewährt haben.
Auf Regeln zugreifen
Wenn Sie Ihre vorhandenen Security Rules ansehen möchten, verwenden Sie entweder die Firebase CLI oder die Firebase Console. Bearbeiten Sie Ihre Regeln immer mit derselben Methode, um zu vermeiden, dass Sie versehentlich Aktualisierungen überschreiben. Wenn Sie nicht sicher sind, ob Ihre lokal definierten Regeln die neuesten Aktualisierungen enthalten, wird in der Firebase Console immer die zuletzt bereitgestellte Version Ihrer Firebase Security Rules angezeigt.
Wenn Sie über die Firebase Console auf Ihre Regeln zugreifen möchten, wählen Sie Ihr Projekt aus und rufen Sie dann Realtime Database, Cloud Firestore oder Storage auf. Klicken Sie auf Regeln , sobald Sie sich in der richtigen Datenbank oder dem richtigen Storage-Bucket befinden.
Wenn Sie über die Firebase CLI auf Ihre Regeln zugreifen möchten, rufen Sie die Regeldatei auf, die in der Datei firebase.json vermerkt ist.
Grundlegende Regeln schreiben
Wenn Sie Ihre App entwickeln und sich mit Security Rules vertraut machen, versuchen Sie, einige grundlegende Sicherheitsregeln zu implementieren, darunter die folgenden Anwendungsfälle:
- Nur Eigentümer von Inhalten:Zugriff auf Inhalte nach Nutzer einschränken.
- Gemischter Zugriff:Schreibzugriff nach Nutzer einschränken, aber öffentlichen Lesezugriff zulassen.
- Attributbasierter Zugriff:Zugriff auf eine Gruppe oder einen Nutzertyp einschränken.
Regeln testen
Um das Verhalten Ihrer App vollständig zu validieren und die Firebase Security Rules
Konfigurationen zu überprüfen, verwenden Sie den Firebase-Emulator, um Unit
Tests in einer lokalen Umgebung auszuführen und zu automatisieren.
Wenn Sie Ihre Firebase Security Rules in der Firebase Console einrichten, können Sie mit dem Firebase-Regelsimulator das Verhalten schnell validieren. Wir empfehlen jedoch, die Regeln mit dem Firebase-Emulator gründlicher zu testen, bevor Sie Ihre Änderungen 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 bereitstellenFirebase Security Rules.