Beginnen Sie mit Firebase-Sicherheitsregeln

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 Regeln beginnen, indem Sie die Schritte in dieser Anleitung befolgen, um Ihre Daten zu sichern und Ihre App vor böswilligen Benutzern zu 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 auf match und allow basiert, die eine Bedingung für den Zugriff auf einen definierten Pfad festlegen.

Erfahren Sie mehr über die Firebase Security Rules-Sprache .

Authentifizierung einrichten

Identifizieren Sie Ihre Benutzer mit der Firebase-Authentifizierung , falls Sie dies noch nicht getan haben. Firebase Authentication unterstützt viele gängige Authentifizierungsmethoden und lässt sich in Firebase Security Rules 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 für jeden Benutzer eine bestimmte Rolle angibt. Anschließend können Ihre Regeln dieses Feld lesen und es verwenden, um rollenbasierten Zugriff zu gewähren.

Bedenken Sie beim Definieren Ihrer Daten- und Regelarchitekturen, dass Firebase-Sicherheitsregeln den Zugriff auf diesen Datensatz gewähren, wenn eine Regel Zugriff auf einen Datensatz gewährt. Mit anderen Worten: Sie können den Zugriff auf einen Unterpfad nicht verfeinern, wenn Sie den Zugriff auf einer höheren Ebene Ihrer Datenhierarchie gewährt haben.

Greifen Sie auf Ihre Regeln zu

Um Ihre vorhandenen Regeln anzuzeigen, verwenden Sie entweder die Firebase-CLI oder die Firebase-Konsole. Stellen Sie sicher, dass Sie Ihre Regeln konsistent mit der gleichen Methode bearbeiten, um ein versehentliches Überschreiben von Aktualisierungen zu vermeiden. Wenn Sie 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 Speicher-Bucket befinden.

Um über die Firebase-CLI auf Ihre Regeln zuzugreifen, rufen Sie die in Ihrer Datei „firebase.json“ angegebene Regeldatei auf.

Schreiben Sie Grundregeln

Während Sie Ihre App entwickeln und Regeln verstehen, versuchen Sie, 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 des Benutzers, 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
Konfigurationen verwenden Sie den Firebase-Emulator , um Komponententests 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 in der Produktion bereitzustellen. Befolgen Sie die unter Verwalten und Bereitstellen von Firebase-Sicherheitsregeln beschriebenen Schritte.