KI-Prompt: Firebase-Sicherheitsregeln schreiben

Mit diesem Prompt kann Ihr KI-Assistent (z. B. Google Antigravity) generieren und optimieren Firebase Security Rules für Ihre App. Sie können den Prompt verwenden, um zu entwerfen Security Rules für häufige Anwendungsfälle, z. B. um nutzerspezifischen Zugriff zu gewähren, rollenbasierte Berechtigungen zu implementieren und Daten zu validieren.

Dieser Prompt konzentriert sich auf das Generieren 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.

Mit diesem Prompt können Sie eine solide Sicherheitsstrategie entwickeln. 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: Testen Sie Ihre Security Rules.

Vorbereitung

Beschränkungen

Wir arbeiten aktiv daran, diese Funktionen zu verbessern. Daher kann sich diese Liste der Beschränkungen ändern. Weitere Updates folgen.

  • Der Prompt wurde entwickelt, um Firebase Security Rules für Cloud Firestore und Cloud Storage for Firebase zu generieren. Er kann noch keine Security Rules für Firebase Realtime Database generieren.

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

  • Gemini in Firebase in der Firebase Console kann keine Firebase Security Rules generieren, auch wenn Sie diesen Prompt verwenden. Verwenden Sie stattdessen einen alternativen KI-Assistenten, der Zugriff auf Ihre Codebasis hat, z. B. Antigravity (siehe diese Seite).

Prompt verwenden

Diese Funktion ist verfügbar, wenn Sie den Firebase-MCP-Server und Firebase-Agent-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 wurden entwickelt, um Security Rules basierend auf dem Prinzip der geringsten Berechtigung zu entwerfen und Schwachstellen durch iterative "Angriffssimulationen" aufzudecken. Zur Unterstützung der endgültigen Überprüfung bieten sie eine Unit-Testsuite mit @firebase/rules-unit-testing, mit der Sie Ihre Sicherheitslogik lokal mit der Firebase Local Emulator Suite überprüfen können.

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

  1. Ihre Security Rules und Tests generieren.

  2. Validierung von Security Rules und Testergebnisse überprüfen.

  3. bereitstellen Security Rules in Ihrem Firebase-Projekt.

Schritt 1: Security Rules und Tests generieren

Richten Sie die Tools ein und führen Sie sie aus:

  1. Aktivieren Sie die Firebase-Agent-Skills:

    • Google Antigravity: Folgen Sie der Einrichtungsanleitung , um das Firebase-Integrationspaket zu aktivieren. Wenn Sie die CLI 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 (z. B. führen Sie agy im Terminal für die CLI aus oder öffnen Sie die Desktopanwendung).

  3. Bitten Sie den Agent im Stammverzeichnis Ihres Projekts, Security Rules für entweder 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), geben Sie den Prompt in natürlicher Sprache ein.

      • Generieren 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 Verzeichnis security_rules_test_firestore, das ein Node.js-Projekt mit Unit-Tests für die generierten Security Rules enthält.

      • Generieren 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 Verzeichnis security_rules_test_storage, das ein Node.js-Projekt mit Unit-Tests für die generierten Security Rules enthält.

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

      • Generieren Security Rules für Cloud Firestore:

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

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

      • Generieren Security Rules für Cloud Firestore: Kopieren Sie den Prompt aus Cloud Firestore.
      • Generieren Security Rules für Cloud Storage for Firebase: Kopieren Sie den Prompt aus Cloud Storage for Firebase.

Schritt 2: Security Rules Validierung und Testergebnisse überprüfen

  1. Achten Sie darauf, dass die folgenden Schritte von Ihrem KI-Coding-Agent ausgeführt werden. Nachdem die Tools ausgeführt wurden, sollten Sie eine generierte Zusammenfassung erhalten.

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

    • Unit-Tests: Nach der Syntaxvalidierung versucht Ihr KI-Coding-Agent, die generierten Unit-Tests mit der Firebase Local Emulator Suite auszuführen.

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

    • Option 1: Weisen Sie Ihren KI-Assistenten an, 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 README.md Datei im rules_test oder storage_rules_test Verzeichnis.

Schritt 3: Security Rules in Ihrem Firebase-Projekt bereitstellen

Wenn Sie mit dem Ergebnis Ihrer 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