Google is committed to advancing racial equity for Black communities. See how.
Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

Beginnen Sie mit den Sicherheitsregeln für Cloud Firestore

Mit den Cloud Firestore-Sicherheitsregeln können Sie sich darauf konzentrieren, eine hervorragende Benutzererfahrung zu erzielen, ohne die Infrastruktur verwalten oder serverseitigen Authentifizierungs- und Autorisierungscode schreiben zu müssen.

Sicherheitsregeln bieten Zugriffskontrolle und Datenvalidierung in einem einfachen, aber aussagekräftigen Format. Um benutzerbasierte und rollenbasierte Zugriffssysteme zu erstellen, die die Daten Ihrer Benutzer schützen, müssen Sie die Firebase-Authentifizierung mit Cloud Firestore-Sicherheitsregeln verwenden.

Sicherheitsregeln Version 2

Ab Mai 2019 ist Version 2 der Cloud Firestore-Sicherheitsregeln verfügbar. Version 2 der Regeln ändert das Verhalten rekursiver Platzhalter {name=**} . Sie müssen Version 2 verwenden, wenn Sie Sammlungsgruppenabfragen verwenden möchten . Sie müssen sich für Version 2 rules_version = '2'; indem Sie rules_version = '2'; Die erste Zeile in Ihren Sicherheitsregeln:

rules_version = '2';
service cloud.firestore {
  match /databases/{database}/documents {

Regeln schreiben

Alle Cloud Firestore-Sicherheitsregeln bestehen aus match , die Dokumente in Ihrer Datenbank identifizieren und Ausdrücke allow , die den Zugriff auf diese Dokumente steuern:

service cloud.firestore {
  match /databases/{database}/documents {
    match /<some_path>/ {
      allow read, write: if <some_condition>;
    }
  }
}

Jede Datenbankanforderung aus einer Cloud Firestore-Bibliothek für Mobilgeräte / Webclients wird anhand Ihrer Sicherheitsregeln bewertet, bevor Daten gelesen oder geschrieben werden. Wenn die Regeln den Zugriff auf einen der angegebenen Dokumentpfade verweigern, schlägt die gesamte Anforderung fehl.

Im Folgenden finden Sie einige Beispiele für grundlegende Regelsätze. Diese Regeln sind zwar gültig, werden jedoch für Produktionsanwendungen nicht empfohlen:

Auth erforderlich

// Allow read/write access on all documents to any user signed in to the application
service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write: if request.auth != null;
    }
  }
}

Leugne alles

// Deny read/write access to all users under any conditions
service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write: if false;
    }
  }
}

Alles erlauben

// Allow read/write access to all users under any conditions
// Warning: **NEVER** use this rule set in production; it allows
// anyone to overwrite your entire database.
service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write: if true;
    }
  }
}

Der in den obigen Beispielen verwendete Pfad {document=**} stimmt mit jedem Dokument in der gesamten Datenbank überein. Fahren Sie mit dem Handbuch zur Strukturierung von Sicherheitsregeln fort , um zu erfahren, wie Sie bestimmte Datenpfade abgleichen und mit hierarchischen Daten arbeiten.

Testregeln

Cloud Firestore bietet einen Regelsimulator, mit dem Sie Ihren Regelsatz testen können. Sie können auf den Simulator über die Registerkarte Regeln im Abschnitt Cloud Firestore der Firebase-Konsole zugreifen.

Mit dem Regelsimulator können Sie authentifizierte und nicht authentifizierte Lese-, Schreib- und Löschvorgänge simulieren. Wenn Sie eine authentifizierte Anforderung simulieren, können Sie Authentifizierungstoken von verschiedenen Anbietern erstellen und in der Vorschau anzeigen. Simulierte Anforderungen werden für den Regelsatz in Ihrem Editor ausgeführt, nicht für Ihren aktuell bereitgestellten Regelsatz.

Regeln bereitstellen

Bevor Sie Cloud Firestore über Ihre mobile App verwenden können, müssen Sie Sicherheitsregeln bereitstellen. Sie können Regeln in der Firebase-Konsole oder über die Firebase-CLI bereitstellen.

Aktualisierungen der Cloud Firestore-Sicherheitsregeln können bis zu einer Minute dauern, um neue Abfragen und Listener zu beeinflussen. Es kann jedoch bis zu 10 Minuten dauern, bis die Änderungen vollständig übertragen sind und alle aktiven Listener betroffen sind.

Verwenden Sie die Firebase-Konsole

Öffnen Sie zum Einrichten und Bereitstellen Ihres ersten Regelsatzes die Registerkarte Regeln im Abschnitt Cloud Firestore der Firebase-Konsole.

Schreiben Sie Ihre Regeln in den Online-Editor und klicken Sie dann auf Veröffentlichen .

Verwenden Sie die Firebase-CLI

Sie können Regeln auch über die Firebase-CLI bereitstellen. Durch die Verwendung der CLI können Sie Ihre Regeln mit Ihrem Anwendungscode unter Versionskontrolle halten und Regeln als Teil Ihres vorhandenen Bereitstellungsprozesses bereitstellen.

// Set up Firestore in your project directory, creates a .rules file
firebase init firestore

// Edit the generated .rules file to your desired security rules
// ...

// Deploy your .rules file
firebase deploy --only firestore:rules

Nächste Schritte