Firebase Security Rules
Mit unseren flexiblen und erweiterbaren Firebase-Sicherheitsregeln können Sie Ihre Daten in Cloud Firestore, Firebase Realtime Database, und Cloud Storage schützen.
Firebase Security Rules stehen zwischen Ihren Daten und böswilligen Nutzern. Sie können einfache oder komplexe Regeln schreiben, die die Daten Ihrer App bis zu dem Detaillierungsgrad schützen, der für Ihre spezifische App erforderlich ist.
Firebase Security Rules nutzen erweiterbare, flexible Konfigurationssprachen, um zu definieren, auf welche Daten Ihre Nutzer zugreifen können für Realtime Database, Cloud Firestore und Cloud Storage. Firebase Realtime Database Security Rules verwenden JSON in Regeldefinitionen, während Cloud Firestore Security Rules und Firebase Security Rules für Cloud Storage eine eindeutige Sprache nutzen, die für komplexere regelspezifische Strukturen entwickelt wurde.
Weitere Informationen zum Einrichten von Security Rules für die spezifischen Firebase-Produkte , die Sie in Ihrer App verwenden, und dazu, wie sich das Verhalten von Security Rules zwischen Firebase -Produkten unterscheidet
Hauptmerkmale
| Flexibilität | Schreiben Sie benutzerdefinierte Regeln, die für die Struktur und das Verhalten Ihrer App sinnvoll sind. Security Rules verwenden Sprachen, mit denen Sie Ihre eigenen Daten zur Autorisierung des Zugriffs nutzen können. |
| Detaillierungsgrad | Ihre Regeln können so allgemein oder so spezifisch sein, wie Sie es benötigen. |
| Unabhängige Sicherheit | Da Security Rules außerhalb Ihrer App definiert werden (in der Firebase Console oder Firebase CLI), sind Clients nicht für die Durchsetzung der Sicherheit verantwortlich, Fehler gefährden keine Daten und Ihre Daten sind immer geschützt. |
Wie funktionieren diese Regeln?
Firebase Security Rules funktionieren, indem sie ein Muster mit Datenbankpfaden abgleichen und dann benutzerdefinierte Bedingungen anwenden, um den Zugriff auf Daten in diesen Pfaden zu ermöglichen. Alle Security Rules für Firebase-Produkte haben eine Komponente für den Pfadabgleich und eine bedingte Anweisung, die Lese- oder Schreibzugriff ermöglicht. Sie müssen Security Rules für jedes Firebase-Produkt definieren, das Sie in Ihrer App verwenden.
Für Cloud Firestore und Cloud Storage verwenden Security Rules die folgende Syntax:
service <<name>> {
// Match the resource path.
match <<path>> {
// Allow the request if the following conditions are true.
allow <<methods>> : if <<condition>>
}
}
Für Realtime Database verwenden JSON-basierte Security Rules die folgende Syntax:
{
"rules": {
"<<path>>": {
// Allow the request if the condition for each method is true.
".read": <<condition>>,
".write": <<condition>>
}
}
}
Security Rules werden als OR-Anweisungen und nicht als AND-Anweisungen angewendet.
Wenn also mehrere Regeln mit einem Pfad übereinstimmen und eine der übereinstimmenden
Bedingungen Zugriff gewährt, Security Rules gewähren Zugriff auf die Daten in diesem
Pfad. Wenn eine allgemeine Regel Zugriff auf Daten gewährt, können Sie den Zugriff nicht mit einer spezifischeren Regel einschränken. Sie können dieses Problem jedoch vermeiden, indem Sie darauf achten, dass sich Ihre
Security Rules nicht zu stark überschneiden. Firebase Security Rules kennzeichnen Überschneidungen in Ihren
übereinstimmenden Pfaden als Compilerwarnungen.
Firebase Security Rules kann auch Authentication nutzen, um nutzerbasierte Berechtigungen zu gewähren. Die von Ihnen festgelegten Bedingungen können sehr einfach oder unglaublich komplex sein. Informieren Sie sich über Security Rules Sprache und Verhalten bevor Sie Security Rules schreiben.
Vorgehensweise bei der Implementierung
| Produkt-SDKs einbinden | Cloud Firestore, Cloud Storage oder Realtime Database für Ihre App einrichten | |
| Firebase Security Rules schreiben | Weitere Informationen zur FunktionsweiseSecurity Rules und zum Einrichten einiger grundlegender Security Rules | |
| Firebase Security Rules testen | Verwenden Sie die Realtime Database und Cloud Firestore Emulatoren, um das Verhalten Ihrer App zu testen und Ihre Regeln zu validieren, bevor Sie sie in der Produktion bereitstellen. | |
| Firebase Security Rules bereitstellen | Verwenden Sie die Firebase Konsole oder die Firebase CLI, um Ihre Regeln in der Produktion bereitzustellen. |
Nächste Schritte
- Die Firebase Security Rules Sprache verstehen.
- Weitere Informationen zur Funktionsweise von Firebase Security Rules.
- Entdecken Sie die häufigen Fehler, die Sie vermeiden sollten.