FirexportGuides
Comment exporter les règles de sécurité et les index Firestore
La console Firebase affiche vos règles de sécurité Firestore dans un éditeur et vos index dans un tableau, mais aucun bouton ne permet de les enregistrer dans un fichier. Les fichiers que déploie la Firebase CLI sont firestore.rules et firestore.indexes.json. Il existe trois façons de les obtenir. Celle qui convient dépend de deux choses : si vous déployez depuis un dossier de projet, et quelle version des règles il vous faut.
Mis à jour le 27 octobre 2026. Firexport, l’extension de la méthode 1, est la nôtre. Les méthodes 2 et 3 n’en ont pas besoin.
La réponse courte
- Les règles ou les index dans un fichier, depuis la console, sans la CLI: exportez-les depuis les onglets Règles (Rules) et Index (Indexes) avec une extension de navigateur. Méthode 1
- Un dossier de projet depuis lequel vous déployez avec firebase deploy: firebase init firestore, ou firebase firestore:indexes. Méthode 2
- Seulement les règles, une seule fois: copiez-les depuis l’onglet Règles (Rules). Méthode 3
| 1. Console + extension | 2. Firebase CLI | 3. Copie depuis la console | |
|---|---|---|---|
| Mise en place | Installer une extension Chrome | Node.js et la Firebase CLI | Aucune |
| Règles | firestore.rules, gratuit | firestore.rules | Collées dans un fichier |
| Versions précédentes et brouillons | Oui, celle qu’affiche l’éditeur | Non, les dernières règles publiées | Oui |
| Index | Le tableau en JSON, gratuit. firestore.indexes.json avec Advanced | firestore.indexes.json | Non |
1. Exporter depuis la console Firebase avec Firexport
Firexport est une extension Chrome gratuite qui ajoute un bouton Exporter aux onglets Règles (Rules) et Index (Indexes) de Firestore. Aucune connexion n’est demandée, et rien n’est lu dans votre base de données : Firexport enregistre ce que la console affiche déjà.
Règles de sécurité
- Installez Firexport depuis le Chrome Web Store.
- Dans la console Firebase, ouvrez Firestore Database > Règles (Rules).
- Pour exporter une version précédente, choisissez-la dans la liste de gauche. Les modifications non publiées de l’éditeur sont exportées telles quelles.
- Cliquez sur Exporter, à l’extrémité droite de la barre au-dessus de l’éditeur. Firexport enregistre le texte de l’éditeur sous
firestore.rules.
Le fichier contient exactement ce que contient l’éditeur, octet pour octet, commentaires et lignes vides compris. L’export des règles est gratuit dans toutes les formules.

Index
- Ouvrez Firestore Database > Index (Indexes).
- Cliquez sur Exporter, à côté du bouton Ajouter un index (Add index).
- Dans la version gratuite, Firexport enregistre en JSON le tableau affiché, toutes ses pages comprises : les index composites sous Manuel (Manual), les exemptions d’index à champ unique sous Automatique (Automatic). C’est le tableau tel que la console l’affiche :
firebase deployne peut donc pas le lire, et le fichier ne s’appelle pasfirestore.indexes.json. - Avec Advanced, Firexport enregistre
firestore.indexes.json: les index composites et les remplacements de champ ensemble, quel que soit le tableau affiché, au format que produitfirebase firestore:indexes. Pour une base de données nommée, le fichier s’appellefirestore.<database>.indexes.json. - Une différence avec le fichier de la CLI : un champ doté d’une règle TTL mais sans exemption d’index n’y figure pas, car la console ne charge pas ces champs.

Exportez les règles et les index Firestore depuis la console, sans installer la Firebase CLI.
2. Les télécharger avec la Firebase CLI
La Firebase CLI écrit les deux fichiers quand elle configure Firestore dans un dossier : firebase init firestore télécharge les règles et les index déployés sur le projet. Pour les index seuls, firebase firestore:indexes affiche le contenu de firestore.indexes.json. Les deux commandes sont gratuites et nécessitent Node.js.
npm install -g firebase-tools
firebase login
# Rules and indexes, into firestore.rules and firestore.indexes.json
firebase init firestore
# Or only the indexes
firebase firestore:indexes --project your-project-id > firestore.indexes.jsoninitdemande le projet et les noms des fichiers, et écrit unfirebase.jsonqui pointe vers eux. La commande télécharge les dernières règles publiées, et non une version précédente ou un brouillon non publié.- Pour une base de données autre que
(default), ajoutez--database <id>àfirestore:indexes.initdemande quelle base de données configurer, mais récupère les règles sans le nom de la base : vérifiez donc quefirestore.rulesprovient bien de celle que vous vouliez.
3. Copier les règles depuis la console
Pour les règles actuelles, une seule fois, la console suffit. Ouvrez Firestore Database > Règles (Rules), cliquez dans l’éditeur, sélectionnez tout avec Ctrl+A (⌘A sur Mac), copiez, puis collez le tout dans un fichier nommé firestore.rules. Pour copier une version précédente, choisissez-la d’abord à gauche.
Les index n’ont pas ce raccourci. L’onglet Index (Indexes) est un tableau, pas du texte : pour en faire un fichier, il faut écrire chaque index à la main dans firestore.indexes.json.
Redéployer les fichiers
Les deux fichiers se placent à côté d’un firebase.json qui les nomme, celui qu’écrit firebase init firestore :
{
"firestore": {
"rules": "firestore.rules",
"indexes": "firestore.indexes.json"
}
}Exécutez ensuite firebase deploy --only firestore, ou firestore:rules ou firestore:indexes pour n’en déployer qu’un.
- Si le projet a des index que le fichier ne liste pas, la CLI les affiche et demande confirmation avant de les supprimer.
--forceles supprime sans demander. Une règle TTL absente du fichier n’est pas supprimée. - Ajoutez
--projectpour déployer les mêmes règles et index sur un autre projet, par exemple de la production vers la préproduction. - Les règles déployées s’appliquent immédiatement à tous les clients : testez donc d’abord vos modifications dans l’émulateur Firestore.
FAQ
Peut-on télécharger les règles de sécurité Firestore depuis la console Firebase ?
Aucun bouton ne le permet. L’onglet Règles (Rules) les affiche dans un éditeur depuis lequel vous pouvez les copier, firebase init firestore les télécharge dans firestore.rules, et une extension de navigateur comme Firexport ajoute un bouton Exporter qui les enregistre sous firestore.rules.
Comment exporter les index Firestore dans firestore.indexes.json ?
Exécutez firebase firestore:indexes > firestore.indexes.json avec la Firebase CLI, ou exportez le fichier depuis l’onglet Index (Indexes) avec Firexport Advanced. Les deux écrivent les index composites et les remplacements de champ au format que lit firebase deploy.
Comment copier les index Firestore vers un autre projet ?
Exportez firestore.indexes.json depuis le premier projet, puis exécutez firebase deploy --only firestore:indexes --project suivi de l’ID de l’autre projet. Les nouveaux index sont créés en arrière-plan, et les requêtes qui en exigent un échouent tant qu’il n’apparaît pas comme Activé (Enabled).
Puis-je récupérer une version précédente de mes règles Firestore ?
Oui, depuis la console. L’onglet Règles (Rules) liste les versions précédentes à gauche ; choisissez-en une pour l’afficher, puis copiez-la ou exportez-la avec Firexport. firebase init firestore ne télécharge que les dernières règles publiées.
Exporter les règles ou les index coûte-t-il des lectures Firestore ?
Non. Les règles et les définitions d’index ne sont pas des documents : les enregistrer ne lit donc rien dans votre base de données, que ce soit depuis la console, avec la CLI ou avec Firexport.
