Firebase Security Rules bieten einen zuverlässigen, vollständig anpassbaren Schutz für Ihre Daten in Cloud Firestore, Realtime Database und Cloud Storage. Sie können ganz einfach mit Rules beginnen, indem Sie die Schritte in diesem Leitfaden befolgen, um Ihre Daten zu schützen und Ihre App vor böswilligen Nutzern zu schützen.
Die Sprache Firebase Security Rules verstehen
Bevor du mit dem Verfassen von Regeln beginnst,
Die spezifische Firebase Security Rules-Sprache für die von Ihnen verwendeten Firebase-Produkte
Cloud Storage verwendet eine Obermenge
der Common Expression Language (CEL), die auf match
und allow
basiert
die eine Bedingung für den Zugriff unter einem definierten Pfad festlegen.
Beginnen Sie mit der Grundsyntax der Firebase Security Rules-Sprache.
Authentication einrichten
Fügen Sie Ihrer App Firebase Authentication hinzu, falls Sie dies noch nicht getan haben. Firebase Authentication unterstützt viele gängige Authentifizierungsmethoden und lässt sich in Firebase Security Rules, um umfassende Überprüfungsfunktionen bereitzustellen.
Sie können zusätzliche, benutzerdefinierte Authentifizierungsinformationen für Ihre Anwendung 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 darauf auswirken, um Ihre Regeln zu implementieren. Berücksichtigen Sie bei der Definition Ihrer Datenstrukturen die auf Ihre Rules-Struktur haben könnten.
In Cloud Storage können Sie beispielsweise ein Feld einfügen, das eine bestimmte Rolle für jeden Nutzer angibt. Ihre Regeln können dann und verwenden es, um rollenbasierten Zugriff zu gewähren. Sie können auch eine Cloud Firestore-Datenbank, Zugriffskriterien in Cloud Firestore speichern Dokumente und greifen dann über Cloud Storage Security Rules auf diese Dokumente zu.
Denken Sie beim Definieren Ihrer Daten- und Regelarchitekturen daran, wie je nach Produkt kaskadierend oder nicht kaskadierend. Mit Realtime Database, Regeln funktionieren von oben nach unten, wobei flachere Regeln Vorrang vor tieferen Regeln haben. Wenn ein gewährt die Regel Lese- oder Schreibberechtigungen unter einem bestimmten Pfad, dann gewährt sie auch Zugriff auf alle untergeordneten Knoten. Im Gegensatz dazu können mit Cloud Firestore und Cloud Storage, gelten die Regeln nur auf bestimmten Ebenen der Datenhierarchie. Außerdem schreiben Sie explizite Regeln, um den Zugriff auf verschiedene Ebenen zu steuern.
Auf Ihre Regeln zugreifen
Verwenden Sie zum Aufrufen Ihrer vorhandenen Rules entweder die Firebase-Befehlszeile oder die Firebase-Konsole. Achten Sie darauf, dass Sie Ihre Regeln mit derselben Methode bearbeiten, um das versehentliche Überschreiben von Updates zu vermeiden. Wenn Sie sich nicht sicher sind ob Ihre lokal definierten Regeln den neuesten Aktualisierungen entsprechen, In der Console wird immer die zuletzt bereitgestellte Version von Firebase Security Rules angezeigt.
Um über die Firebase-Konsole auf Ihre Regeln zuzugreifen, wählen Sie Ihr klicken Sie im linken Navigationsbereich auf Speicher: Klicken Sie auf Rules, wenn 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 firebase.json-Datei vermerkt ist.
Grundlegende Regeln schreiben
Während du deine App entwickelst und dich mit Rules verstehst, versuche Implementierung von Rules für einige grundlegende Anwendungsfälle einschließlich der folgenden:
- Nur Rechteinhaber:Du kannst den Zugriff auf Inhalte je nach Nutzer einschränken.
- Gemeinsamer Zugriff: Schreibzugriff für Nutzer einschränken, aber öffentlichen Lesezugriff zulassen.
- Attributbasierter Zugriff: Der Zugriff wird auf eine Gruppe oder einen Nutzertyp beschränkt.
Regeln testen
Wenn Sie Ihre Firebase Security Rules in der Firebase Console einrichten, können Sie mit dem Firebase Rules Playground das Verhalten schnell überprüfen. Wir empfehlen jedoch gründlichere Tests mit der Local Emulator Suite vor der Bereitstellung der Änderungen an der Produktion.
Regeln bereitstellen
Verwenden Sie die Firebase-Konsole oder die Firebase-Befehlszeile, um Ihre Regeln bereitzustellen bis zur Produktion. Befolgen Sie die Schritte in Firebase Security Rules verwalten und bereitstellen