KI-Prompt: Firebase-Sicherheitsregeln schreiben

Mit diesem Prompt kann Ihr KI-Assistent (z. B. Google Antigravity) Firebase Security Rules für Ihre App generieren und optimieren. Sie können den Prompt verwenden, um Security Rules für häufige Anwendungsfälle zu entwerfen, z. B. für die Gewährung nutzerspezifischen Zugriffs, die Implementierung rollenbasierter Berechtigungen und die Validierung von Daten.

Dieser Prompt konzentriert sich auf die Generierung von Security Rules für:

  • Cloud Firestore: Sammlungen und Dokumente basierend auf der Logik Ihrer App sichern.
  • Cloud Storage for Firebase: Zugriffsberechtigungen für Ihre gespeicherten Dateien validieren.

Dieser Prompt kann Ihnen helfen, mit einer starken Sicherheitslage zu beginnen. Sie sollten Ihre Security Rules jedoch immer gründlich testen, bevor Sie sie in der Produktion bereitstellen. Weitere Informationen zum Testen von Security Rules finden Sie unter Erste Schritte mit Firebase Security Rules: Security Rules testen.

Vorbereitung

  • Machen Sie sich mit den Firebase Security Rules-Best Practices vertraut.
  • Wenn Sie Einheitentests für Firebase Security Rules ausführen und die Firebase Local Emulator Suite verwenden möchten, installieren Sie Node.js und die Firebase-Befehlszeile. Eine ausführliche Anleitung finden Sie unter Firebase Local Emulator Suite installieren, konfigurieren und einbinden.
  • Empfohlen:Wenn Sie es noch nicht getan haben, installieren Sie Antigravity. In der folgenden Anleitung wird beschrieben, wie Sie die Firebase-Agent-Skills und den MCP-Server aktivieren und verwenden, um Security Rules zu generieren. Wenn Sie einen anderen KI-Coding-Agenten verwenden möchten, können Sie den Prompt für Cloud Firestore oder Cloud Storage for Firebase aus dem firebase-tools-Repository kopieren und in den von Ihnen ausgewählten KI-Coding-Agenten einfügen.
  • Die Firebase-Agentenfähigkeiten und der MCP-Server arbeiten zusammen, um auf Prompts zuzugreifen, mit denen Firebase Security Rules generiert und validiert wird. Außerdem unterstützen sie beim Testen und Bereitstellen von Security Rules. Installieren Sie den Firebase-MCP-Server, bevor Sie diese Tools zum Generieren von Firebase Security Rules verwenden.

Beschränkungen

Wir arbeiten aktiv an der Verbesserung dieser Funktion. Daher kann sich diese Liste der Einschränkungen ändern. Weitere Updates folgen.

  • Der Prompt ist darauf ausgelegt, Firebase Security Rules für Cloud Firestore und Cloud Storage for Firebase zu generieren. Security Rules für Firebase Realtime Database können noch nicht generiert werden.

  • Firebase Security Rules werden nicht aufgerufen, wenn Sie von einem Server oder einer anderen Backend-Umgebung aus auf Ihre Datenbank oder Ihren Bucket zugreifen, z. B. bei Verwendung der Firebase Admin SDK. Wenn Sie die Admin SDK verwenden, sind Sie für die Verwaltung der Autorisierung und die Datenvalidierung in Ihrem Backend-Code verantwortlich.

  • Gemini in Firebase in der Firebase-Konsole kann keine Firebase Security Rules generieren, auch wenn dieser Prompt verwendet wird. Verwenden Sie stattdessen einen alternativen KI-Assistenten, der Zugriff auf Ihre Codebasis hat, z. B. Antigravity (siehe unten).

Prompt verwenden

Diese Funktion ist verfügbar, wenn Sie den Firebase-MCP-Server und Firebase-Agenten-Skills mit einem kompatiblen KI-Assistenten (z. B. Antigravity) verwenden, um Ihre Security Rules und Tests zu generieren. Diese Tools analysieren Ihren Quellcode, um Datenschemas und Zugriffsmuster für Cloud Firestore und Cloud Storage zu identifizieren. Sie sind so konzipiert, dass sie Security Rules auf Grundlage des Prinzips der geringsten Berechtigung entwerfen und versuchen, durch iterative „Angriffssimulationen“ Schwachstellen aufzudecken. Zur Unterstützung bei der endgültigen Überprüfung stellen sie eine Unit-Testsuite mit @firebase/rules-unit-testing zur Verfügung, mit der Sie Ihre Sicherheitslogik lokal mit dem Firebase Local Emulator Suite überprüfen können.

Die Verwendung dieser Tools erfordert drei Schritte, die in diesem Abschnitt beschrieben werden:

  1. Security Rules und Tests generieren:

  2. Security Rules-Validierungs- und Testergebnisse ansehen:

  3. Stellen Sie Security Rules in Ihrem Firebase-Projekt bereit.

Schritt 1: Security Rules und Tests generieren

Tools einrichten und ausführen:

  1. Aktivieren Sie die Firebase-Agent-Skills:

    • Google Antigravity: Folgen Sie der Einrichtungsanleitung, um das Firebase-Integrationspaket zu aktivieren. Wenn Sie die Befehlszeile verwenden, können Sie die Skills mit folgendem Befehl aktivieren:

      npx skills add firebase/agent-skills --agent=antigravity
    • Andere KI-Coding-Agents: Folgen Sie der Anleitung für Agent Skills und den MCP-Server.

  2. Starten Sie Ihren KI-Assistenten (führen Sie z. B. agy im Terminal für die Befehlszeile aus oder öffnen Sie die Desktopanwendung).

  3. Bitten Sie den Agenten im Stammverzeichnis Ihres Projekts, Security Rules für Cloud Firestore oder Cloud Storage zu generieren, je nachdem, wie Ihr KI-Coding-Agent mit MCP-Prompts interagiert:

    • Für Coding-Agents, die natürliche Sprache verwenden (z. B. Antigravity): Verwenden Sie natürliche Sprache, um den Agent zu einem Prompt zu veranlassen.

      • Generiere Security Rules für Cloud Firestore:

        Generate Firestore security rules for this project, then run the unit tests.
        

        Im übergeordneten Verzeichnis erstellt der Agent eine firestore.rules-Datei und ein neues security_rules_test_firestore-Verzeichnis, das ein Node.js-Projekt mit Unittests für die generierte Security Rules enthält.

      • Generiere Security Rules für Cloud Storage for Firebase:

        Generate Cloud Storage security rules for this project, then run the unit tests.
        

        Im übergeordneten Verzeichnis erstellt der Agent eine storage.rules-Datei und ein neues security_rules_test_storage-Verzeichnis, das ein Node.js-Projekt mit Unittests für die generierte Security Rules enthält.

    • Für Coding-Agents, die Slash-Befehle unterstützen (z. B. Claude Code), verwenden Sie die folgenden Befehle.

      • Generiere Security Rules für Cloud Firestore:

        /firestore:generate_security_rules
        
      • Generiere Security Rules für Cloud Storage for Firebase:

        /storage:generate_security_rules
        
    • Bei Coding-Agents, die keine MCP-Prompt-Integration unterstützen, können Sie die Roh-Prompt-Vorlage aus dem firebase-tools-Repository kopieren und in den Chat des Agents einfügen.

Schritt 2: Security Rules-Validierungs- und Testergebnisse prüfen

  1. Achten Sie darauf, dass Ihr KI-Coding-Agent Folgendes ausführt. Nachdem die Tools ausgeführt wurden, sollten Sie eine generierte Zusammenfassung erhalten.

    • Syntaxvalidierung: Nachdem Security Rules generiert wurde, validiert Ihr KI-Coding-Agent die Syntax automatisch mit dem Befehl firebase_validate_security_rules vom Firebase-MCP-Server.

    • Einheitentests: Nachdem die Syntax validiert wurde, versucht Ihr KI-Coding-Agent, die generierten Einheitentests mit Firebase Local Emulator Suite auszuführen.

  2. Wenn Tests nicht automatisch ausgeführt werden, starten Sie Firebase Local Emulator Suite in einem separaten Terminal und verwenden Sie dann eine der folgenden Optionen, um die Tests auszuführen:

    • Option 1: KI‑Assistenten anweisen, Tests auszuführen:

      Firebase Emulator Suite is running in a separate terminal. Please execute the tests.
      
    • Option 2: Führen Sie die Tests manuell aus. Folgen Sie dazu der Anleitung in der Datei README.md im Verzeichnis rules_test oder storage_rules_test.

Schritt 3: Security Rules in Ihrem Firebase-Projekt bereitstellen

Wenn Sie mit dem Ergebnis der generierten Security Rules zufrieden sind, verwenden Sie die folgenden Firebase-CLI-Befehle, um die Security Rules in Ihrem Firebase-Projekt bereitzustellen:

  • Cloud Firestore

    firebase deploy --only firestore:rules
  • Cloud Storage for Firebase

    firebase deploy --only storage