Join us in person and online for Firebase Summit on October 18, 2022. Learn how Firebase can help you accelerate app development, release your app with confidence, and scale with ease. Register now

Beginnen Sie mit Firebase-Sicherheitsregeln

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

Firebase-Sicherheitsregeln bieten robusten, 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 dieser Anleitung befolgen, Ihre Daten sichern und Ihre App vor böswilligen Benutzern schützen.

Verstehen Sie die Sprache der Firebase-Sicherheitsregeln

Bevor Sie mit dem Schreiben von Regeln beginnen, sollten Sie sich etwas Zeit nehmen, um die spezifische Sprache der Firebase-Sicherheitsregeln für die von Ihnen verwendeten Firebase-Produkte zu überprüfen. Realtime Database nutzt eine JavaScript-ähnliche Syntax und JSON-Struktur für seine Regeln. Alternativ nutzen Cloud Firestore und Cloud Storage eine Obermenge der Common Expression Language (CEL), die sich auf match und allow -Anweisungen stützt, die eine Bedingung für den Zugriff auf einen definierten Pfad festlegen.

Erfahren Sie mehr über die Sprache der Firebase-Sicherheitsregeln .

Authentifizierung einrichten

Wenn Sie dies noch nicht getan haben, identifizieren Sie Ihre Benutzer mit der Firebase-Authentifizierung . Die Firebase-Authentifizierung unterstützt viele gängige Authentifizierungsmethoden und lässt sich in Firebase-Sicherheitsregeln integrieren, um umfassende Überprüfungsfunktionen bereitzustellen.

Sie können zusätzliche benutzerdefinierte Authentifizierungsinformationen für Ihre App einrichten.

Erfahren Sie mehr über Firebase-Sicherheitsregeln und Firebase-Authentifizierung .

Definieren Sie Ihre Daten- und Regelstrukturen

Die Art und Weise, wie Sie Ihre Daten strukturieren, kann sich auf die Art und Weise auswirken, wie Sie Ihre Regeln strukturieren und implementieren. Berücksichtigen Sie beim Definieren Ihrer Datenstrukturen die möglichen Auswirkungen auf Ihre Regelstruktur.

Beispielsweise möchten Sie in Cloud Firestore möglicherweise ein Feld einfügen, das eine bestimmte Rolle für jeden Benutzer angibt. Dann können Ihre Regeln dieses Feld lesen und es verwenden, um rollenbasierten Zugriff zu gewähren.

Denken Sie beim Definieren Ihrer Daten- und Regelarchitekturen daran, dass Firebase-Sicherheitsregeln Zugriff auf dieses Dataset gewähren, wenn eine Regel Zugriff auf ein Dataset gewährt. Mit anderen Worten, Sie können den Zugriff auf einen Unterpfad nicht verfeinern, wenn Sie den Zugriff auf einer höheren Ebene in Ihrer Datenhierarchie gewährt haben.

Greifen Sie auf Ihre Regeln zu

Verwenden Sie zum Anzeigen Ihrer vorhandenen Regeln entweder die Firebase-Befehlszeilenschnittstelle oder die Firebase-Konsole. Stellen Sie sicher, dass Sie Ihre Regeln immer mit der gleichen Methode bearbeiten, um ein versehentliches Überschreiben von Aktualisierungen zu vermeiden. Wenn Sie sich nicht sicher sind, ob Ihre lokal definierten Regeln die neuesten Updates widerspiegeln, zeigt die Firebase-Konsole immer die zuletzt bereitgestellte Version Ihrer Firebase-Sicherheitsregeln an.

Um über die Firebase-Konsole auf Ihre Regeln zuzugreifen, wählen Sie Ihr Projekt aus und navigieren Sie dann zu Realtime Database , Cloud Firestore oder Storage . Klicken Sie auf Regeln , sobald Sie sich in der richtigen Datenbank oder im richtigen Storage-Bucket befinden.

Um über die Firebase-CLI auf Ihre Regeln zuzugreifen, gehen Sie zu der Datei rules, die in Ihrer Datei firebase.json angegeben ist .

Grundregeln schreiben

Versuchen Sie, während Sie Ihre App entwickeln und die Regeln verstehen, einige grundlegende Sicherheitsregeln zu implementieren, einschließlich der folgenden Anwendungsfälle:

  • Nur Inhaltseigentümer: Beschränken Sie den Zugriff auf Inhalte durch den Benutzer.
  • Gemischter Zugriff: Beschränken Sie den Schreibzugriff durch den Benutzer, erlauben Sie jedoch den öffentlichen Lesezugriff.
  • Attributbasierter Zugriff: Beschränken Sie den Zugriff auf eine Gruppe oder einen Benutzertyp.

Testen Sie Ihre Regeln

Um das Verhalten Ihrer App vollständig zu validieren und Ihre Firebase-Sicherheitsregeln zu überprüfen
verwenden Sie den Firebase-Emulator , um Einheitentests in einer lokalen Umgebung auszuführen und zu automatisieren.

Wenn Sie Ihre Firebase-Sicherheitsregeln in der Firebase-Konsole einrichten, können Sie den Firebase-Regelsimulator verwenden, um das Verhalten schnell zu validieren. Wir empfehlen jedoch gründlichere Tests mit dem Firebase-Emulator, bevor Sie Ihre Änderungen in der Produktion bereitstellen.

Regeln bereitstellen

Verwenden Sie die Firebase-Konsole oder die Firebase-CLI, um Ihre Regeln für die Produktion bereitzustellen. Befolgen Sie die Schritte unter Verwalten und Bereitstellen von Firebase-Sicherheitsregeln .