Ce prompt peut aider votre assistant IA (comme Google Antigravity) à générer et à affiner Firebase Security Rules pour votre application. Vous pouvez l'utiliser pour rédiger Security Rules pour des cas d'utilisation courants, comme accorder un accès spécifique à un utilisateur, implémenter des autorisations basées sur les rôles et valider des données.
Ce prompt se concentre sur la génération de Security Rules pour les éléments suivants :
- Cloud Firestore: sécuriser les collections et les documents en fonction de la logique de votre application.
- Cloud Storage for Firebase : valider les autorisations d'accès à vos fichiers stockés.
L'utilisation de ce prompt peut vous aider à adopter une posture de sécurité solide, mais vous devez toujours tester vos Security Rules de manière approfondie avant de les déployer en production. Pour en savoir plus sur les tests Security Rules, consultez Premiers pas avec Firebase Security Rules : tester vos Security Rules.
Prérequis
- Familiarisez-vous avec Firebase Security Rules les bonnes pratiques.
- Pour exécuter des tests unitaires pour Firebase Security Rules et utiliser les Firebase Local Emulator Suite, installez Node.js et la Firebase CLI. Pour obtenir des instructions complètes, consultez Installer, configurer et intégrer Firebase Local Emulator Suite.
- Recommandé : Si ce n'est pas déjà fait,
installez Antigravity.
Les instructions suivantes expliquent comment activer et utiliser les compétences de l'agent Firebase
et le serveur MCP pour générer Security Rules. Si vous préférez utiliser un autre agent de codage IA, vous pouvez copier et coller le prompt pour Cloud Firestore ou Cloud Storage for Firebase depuis le dépôt
firebase-toolsdans l'agent de codage IA de votre choix. - Les compétences de l'agent Firebase et le serveur MCP fonctionnent ensemble pour accéder aux prompts qui génèrent et valident Firebase Security Rules, et pour faciliter les tests et le déploiement de Security Rules. Installez le serveur MCP Firebase avant d'utiliser ces outils pour générer Firebase Security Rules.
Limites
Nous améliorons activement cette expérience. Cette liste de limites est donc susceptible de changer. Consultez-la régulièrement pour connaître les dernières mises à jour.
Le prompt est conçu pour générer Firebase Security Rules pour Cloud Firestore et Cloud Storage for Firebase. Il n'est pas encore en mesure de générer Security Rules pour Firebase Realtime Database.
Firebase Security Rules ne sont pas appelées lorsque vous accédez à votre base de données ou à votre bucket à partir d'un serveur ou d'un autre environnement backend, par exemple lorsque vous utilisez le Firebase Admin SDK. Si vous utilisez le Admin SDK, vous êtes responsable de la gestion de l'autorisation et de la validation des données dans votre code backend.
Gemini dans Firebase au sein de la Firebase console n'est pas en mesure de générer Firebase Security Rules, même lorsque vous utilisez ce prompt. Utilisez plutôt un autre assistant IA ayant accès à votre base de code, comme Antigravity (décrit sur cette page).
Utiliser le prompt
Cette fonctionnalité est disponible lorsque vous utilisez le
serveur MCP Firebase et les
compétences de l'agent Firebase avec un assistant IA compatible (tel que Antigravity) pour générer vos Security Rules et les
tests. Ces outils
analysent votre code source pour vous aider à identifier les schémas de données et les modèles d'accès pour
Cloud Firestore et Cloud Storage. Ils sont conçus pour rédiger Security Rules
basées sur le principe du moindre privilège et tenter de découvrir
des failles grâce à des simulations d'"attaque" itératives. Pour faciliter la vérification finale, ils fournissent une suite de tests unitaires de départ à l'aide de
@firebase/rules-unit-testing, ce qui vous permet de vérifier votre logique de sécurité
localement à l'aide de la Firebase Local Emulator Suite.
L'utilisation de ces outils nécessite trois étapes décrites dans cette section :
Étape 1 : Générer Security Rules et des tests
Configurez et exécutez les outils :
Activez les compétences de l'agent Firebase :
Google Antigravity : consultez les instructions de configuration pour activer le bundle d'intégration Firebase. Si vous utilisez la CLI, vous pouvez activer les compétences en exécutant la commande suivante :
npx skills add firebase/agent-skills --agent=antigravityAutres agents de codage IA : suivez les instructions concernant les compétences de l'agent et le serveur MCP.
Démarrez votre assistant IA (par exemple, exécutez
agydans votre terminal pour la CLI ou ouvrez l'application de bureau).À la racine de votre projet, demandez à l'agent de générer Security Rules pour Cloud Firestore ou Cloud Storage en fonction de la manière dont votre agent de codage IA interagit avec les prompts MCP :
Pour les agents de codage qui utilisent le langage naturel (comme Antigravity), invitez l'agent à utiliser le langage naturel.
Générer Security Rules pour Cloud Firestore :
Generate Firestore security rules for this project, then run the unit tests.Dans le répertoire parent, l'agent crée un fichier
firestore.ruleset un nouveau répertoiresecurity_rules_test_firestorecontenant un projet Node.js avec des tests unitaires pour les Security Rules.Générer Security Rules pour Cloud Storage for Firebase :
Generate Cloud Storage security rules for this project, then run the unit tests.Dans le répertoire parent, l'agent crée un fichier
storage.ruleset un nouveau répertoiresecurity_rules_test_storagecontenant un projet Node.js avec des tests unitaires pour les Security Rules.
Pour les agents de codage qui prennent en charge les commandes avec barre oblique (comme Claude Code), utilisez les commandes suivantes.
Générer Security Rules pour Cloud Firestore :
/firestore:generate_security_rulesGénérer Security Rules pour Cloud Storage for Firebase :
/storage:generate_security_rules
Pour les agents de codage qui ne prennent pas en charge l'intégration du prompt MCP, vous pouvez copier le modèle de prompt brut à partir du dépôt
firebase-toolset le coller dans le chat de l'agent.- Générer Security Rules pour Cloud Firestore : copiez le prompt à partir de Cloud Firestore.
- Générer Security Rules pour Cloud Storage for Firebase : copiez le prompt à partir de Cloud Storage for Firebase.
Étape 2 : Examiner la validation et les résultats des testsSecurity Rules
Assurez-vous que votre agent de codage IA effectue les opérations suivantes. Vous devriez obtenir un résumé généré après l'exécution des outils.
Validation de la syntaxe : après avoir généré Security Rules, votre agent de codage IA valide automatiquement la syntaxe à l'aide de la commande
firebase_validate_security_rulesdu serveur MCP Firebase.Tests unitaires : après avoir validé la syntaxe, votre agent de codage IA tente d'exécuter les tests unitaires générés à l'aide de Firebase Local Emulator Suite.
Si les tests ne s'exécutent pas automatiquement, démarrez la Firebase Local Emulator Suite dans un terminal distinct, puis utilisez l'une des options suivantes pour exécuter les tests :
Option 1 : Demandez à votre assistant IA d'exécuter les tests :
Firebase Emulator Suite is running in a separate terminal. Please execute the tests.Option 2 : Exécutez les tests manuellement en suivant les instructions du
README.mdfichier dans lerules_testoustorage_rules_testrépertoire.
Étape 3 : Déployer Security Rules dans votre projet Firebase
Lorsque vous êtes satisfait du résultat de votre Security Rules généré, utilisez les commandes suivantes de la CLI Firebase pour déployer les Security Rules dans votre projet Firebase :
Cloud Firestore
firebase deploy --only firestore:rulesCloud Storage for Firebase
firebase deploy --only storage