Catch up on highlights from Firebase at Google I/O 2023. Learn more

Autorisations Firebase IAM

Les autorisations sont accordées aux membres de votre projet via des rôles . Un rôle est un ensemble d'autorisations. Lorsque vous attribuez un rôle à un membre du projet, vous accordez à ce membre du projet toutes les autorisations que le rôle contient.

Cette page décrit les actions activées par les autorisations que vous pouvez trouver répertoriées dans un rôle pris en charge par Firebase. Ces autorisations se répartissent en deux catégories :

Autorisations requises

Firebase IAM inclut des autorisations :

Pour obtenir une liste générale et une description des autorisations spécifiques à un produit ou service Firebase, reportez-vous à la section appropriée dans les autorisations IAM spécifiques au produit Firebase .

Autorisations requises incluses dans tous les rôles

Les autorisations répertoriées dans le tableau suivant sont requises pour utiliser n'importe quel produit ou service Firebase.

Ces autorisations sont automatiquement incluses dans chacun des rôles prédéfinis de Firebase .

Autorisation Description
Accorde des autorisations pour récupérer les informations du projet Firebase
Accorde des autorisations pour récupérer les informations du projet Firebase
Accorde des autorisations pour vérifier l'état des API Google et exécuter des commandes CLI Firebase

Autorisations requises pour les actions spécifiques au service Firebase

Les autorisations répertoriées dans le tableau suivant sont requises pour effectuer certaines actions spécifiques au service Firebase.

Si nécessaire, ces autorisations sont automatiquement incluses dans chacun des rôles prédéfinis de Firebase .

Action Autorisation requise
Accédez aux intégrations de projets Firebase avec des outils de collaboration (y compris Slack, Jira et PagerDuty) firebaseextensions.configs.*
Afficher l'utilisation et les analyses de StackDriver monitoring.timeSeries.list
Exécuter les commandes CLI Firebase
Pour plus d'informations, consultez la documentation Google Cloud sur l'accès au configurateur d'exécution .
runtimeconfig.*

Autorisations requises pour les actions spécifiques à la gestion de Firebase

Les autorisations répertoriées dans le tableau suivant sont des autorisations supplémentaires requises pour effectuer certaines actions spécifiques à la gestion de Firebase.

Autorisation de gestion et actions associées Autorisation supplémentaire requise
firebase.billingPlans.update
Modifier le forfait de facturation d'un projet Firebase resourcemanager.projects.createBillingAssignment
resourcemanager.projects.deleteBillingAssignment
firebase.projects.delete
Supprimer un projet Firebase gestionnaire de ressources.projets.supprimer
firebase.projects.update
Ajouter des ressources Firebase à un projet Google Cloud existant gestionnaire de ressources.projets.get
serviceusage.services.enable
serviceusage.services.get
Modifier le nom d'un projet Firebase gestionnaire de ressources.projets.mise à jour
Ajouter des empreintes digitales de certificat SHA pour les applications Android clientauthconfig.clients.create
Supprimer les empreintes digitales du certificat SHA pour les applications Android clientauthconfig.clients.delete
Mettre à jour l'ID App Store ou l'ID d'équipe pour les applications Apple clientauthconfig.clients.get
clientauthconfig.clients.update

Autorisations IAM spécifiques au produit Firebase

Les tableaux suivants répertorient les autorisations spécifiques à un produit ou service Firebase. Vous pouvez utiliser ces autorisations pour créer des rôles personnalisés .

Autorisations de gestion de Firebase

Notez que certaines des autorisations de gestion suivantes nécessitent des autorisations supplémentaires pour certaines actions .

Nom de l'autorisation Description
firebase.billingPlans.get Récupérer le plan de facturation Firebase actuel pour un projet
firebase.billingPlans.update Modifier le forfait de facturation Firebase actuel pour un projet
firebase.clients.create Ajouter de nouvelles applications à un projet
firebase.clients.delete Supprimer des applications existantes d'un projet
firebase.clients.get Récupérer les détails et les configurations des applications d'un projet
firebase.clients.list Récupérer une liste d'applications dans un projet
firebase.clients.undelete Récupérer une application supprimée avant que ses données ne soient définitivement supprimées
firebase.clients.update Mettre à jour les détails et les configurations des applications dans un projet
firebase.links.create Créer de nouveaux liens vers les systèmes Google
(Console Firebase > Paramètres du projet > Intégrations)
firebase.links.delete Supprimer les liens vers les systèmes Google
(Console Firebase > Paramètres du projet > Intégrations)
firebase.links.list Récupérer une liste de liens vers les systèmes Google
(Console Firebase > Paramètres du projet > Intégrations)
firebase.links.mise à jour Mettre à jour les liens existants vers les systèmes Google
(Console Firebase > Paramètres du projet > Intégrations)
firebase.playLinks.get Récupérer les détails d'un lien vers Google Play
(Console Firebase > Paramètres du projet > Intégrations > Google Play)
firebase.playLinks.list Récupérer une liste de liens vers Google Play
(Console Firebase > Paramètres du projet > Intégrations > Google Play)
firebase.playLinks.mise à jour Créer de nouveaux liens et mettre à jour les liens existants vers Google Play
(Console Firebase > Paramètres du projet > Intégrations > Google Play)
firebase.projects.delete Supprimer des projets existants
firebase.projects.get Récupérer les détails et les ressources Firebase d'un projet
firebase.projects.mise à jour Modifier les attributs d'un projet existant
Recevez des alertes pour les produits et fonctionnalités Firebase applicables ( en savoir plus )
firebaseinstallations.instances.delete Supprimer un ID d'installation Firebase et les données liées à cette installation ( en savoir plus )

Autorisations Google Analytics

Les autorisations suivantes accordent l'accès à la propriété Analytics liée au projet Firebase. Ils permettent aux membres du projet Firebase d'accéder aux données Analytics, y compris les audiences, les propriétés des utilisateurs, les entonnoirs, les rapports, les conversions, etc.

Nom de l'autorisation Description
firebaseanalytics.resources.googleAnalyticsModifier Par défaut, accorde le rôle d'éditeur d'analyses à la propriété Analytics associée
firebaseanalytics.resources.googleAnalyticsAdditionalAccess Par défaut, accorde le rôle Analytics Marketer à la propriété Analytics associée
firebaseanalytics.resources.googleAnalyticsReadAndAnalyze Par défaut, accorde le rôle de lecteur Analytics à la propriété Analytics associée
firebaseanalytics.resources.googleAnalyticsRestrictedAccess Par défaut, accorde le rôle de lecteur Analytics à la propriété Analytics associée sans accès aux données sur les revenus et les données sur les coûts

Autorisations Firebase App Check

Nom de l'autorisation Description
firebaseappcheck.appAttestConfig.get Récupérer la configuration App Attest d'une application
firebaseappcheck.appAttestConfig.update Mettre à jour la configuration App Attest d'une application
firebaseappcheck.appCheckTokens.verify Vérifier les jetons App Check émis pour un projet Firebase
firebaseappcheck.debugTokens.get Récupérer les jetons de débogage d'une application
firebaseappcheck.debugTokens.update Créer, mettre à jour ou supprimer des jetons de débogage d'une application
firebaseappcheck.deviceCheckConfig.get Récupérer la configuration DeviceCheck d'une application
firebaseappcheck.deviceCheckConfig.update Mettre à jour la configuration DeviceCheck d'une application
firebaseappcheck.playIntegrityConfig.get Récupérer la configuration Play Integrity d'une application
firebaseappcheck.playIntegrityConfig.update Mettre à jour la configuration Play Integrity d'une application
firebaseappcheck.recaptchaEnterpriseConfig.get Récupérer la configuration reCAPTCHA Enterprise d'une application
firebaseappcheck.recaptchaEnterpriseConfig.update Mettre à jour la configuration reCAPTCHA Enterprise d'une application
firebaseappcheck.recaptchaV3Config.get Récupérer la configuration reCAPTCHA v3 d'une application
firebaseappcheck.recaptchaV3Config.update Mettre à jour la configuration reCAPTCHA v3 d'une application
firebaseappcheck.safetyNetConfig.get Récupérer la configuration SafetyNet d'une application
firebaseappcheck.safetyNetConfig.update Mettre à jour la configuration SafetyNet d'une application
firebaseappcheck.services.get Récupérer les configurations d'application de service d'un projet
firebaseappcheck.services.update Mettre à jour les configurations d'application de service d'un projet

Autorisations de distribution d'applications Firebase

Nom de l'autorisation Description
firebaseappdistro.releases.list Récupérer une liste des distributions existantes et des liens d'invitation
firebaseappdistro.releases.update Créer, supprimer et modifier des distributions
Créer et supprimer des liens d'invitation
firebaseappdistro.testers.list Récupérer une liste des testeurs existants dans un projet
firebaseappdistro.testers.update Créer et supprimer des testeurs dans un projet
firebaseappdistro.groups.list Récupérer une liste des groupes de testeurs existants dans un projet
firebaseappdistro.groups.update Créer et supprimer des groupes de testeurs dans un projet

Autorisations d'authentification Firebase

Nom de l'autorisation Description
firebaseauth.configs.create Créer la configuration d'authentification
firebaseauth.configs.get Récupérer la configuration de l'authentification
firebaseauth.configs.getHashConfig Obtenir la configuration du hachage du mot de passe et le hachage du mot de passe des comptes d'utilisateurs
firebaseauth.configs.getSecret Obtenir le secret client dans la configuration de l'authentification
firebaseauth.configs.update Mettre à jour la configuration d'authentification existante
firebaseauth.users.create Créer de nouveaux utilisateurs dans l'authentification
firebaseauth.users.createSession Créer un cookie de session pour un utilisateur connecté
firebaseauth.users.delete Supprimer les utilisateurs existants dans l'authentification
firebaseauth.users.get Récupérer une liste des utilisateurs d'authentification existants
firebaseauth.users.sendEmail Envoyer des e-mails aux utilisateurs
firebaseauth.users.update Mettre à jour les utilisateurs existants dans l'authentification

Autorisations de test A/B Firebase (bêta)

Nom de l'autorisation Description
firebaseabt.experimentresults.get Récupérer les résultats d'une expérience
firebaseabt.experiments.create Créer de nouvelles expériences
firebaseabt.experiments.delete Supprimer des expériences existantes
firebaseabt.experiments.get Récupérer les détails d'une expérience existante
firebaseabt.experiments.list Récupérer une liste des expériences existantes
firebaseabt.experiments.update Mettre à jour une expérience existante
firebaseabt.projectmetadata.get Récupérer les métadonnées d'analyse pour configurer une expérience

Autorisations Cloud Firestore

Pour obtenir une liste et des descriptions des autorisations Cloud Firestore, reportez-vous à la documentation Google Cloud .

Autorisations de stockage en nuage

Pour obtenir la liste et les descriptions des autorisations Cloud Storage, consultez la documentation Google Cloud .

Autorisations des règles de sécurité Firebase (Cloud Firestore et Cloud Storage)

Nom de l'autorisation Description
firebaserules.releases.create Créer des versions
firebaserules.releases.delete Supprimer les versions
firebaserules.releases.get Récupérer les versions
firebaserules.releases.getExecutable Récupérer les charges utiles exécutables binaires pour les versions
firebaserules.releases.list Récupérer une liste des versions
firebaserules.releases.update Mettre à jour les références des ensembles de règles pour les versions
firebaserules.rulesets.create Créer de nouveaux ensembles de règles
firebaserules.rulesets.delete Supprimer l'ensemble de règles existant
firebaserules.rulesets.get Récupérer les ensembles de règles avec la source
firebaserules.rulesets.list Rechercher les métadonnées de l'ensemble de règles (pas de source)
firebaserules.rulesets.test Tester l'exactitude des sources

Autorisations Cloud Functions pour Firebase

Pour obtenir la liste et les descriptions des autorisations Cloud Functions, consultez la documentation IAM .

Sachez que le déploiement de fonctions nécessite une configuration spécifique d'autorisations qui ne sont pas incluses dans les rôles prédéfinis standard de Firebase . Pour déployer des fonctions, utilisez l'une des options suivantes :

  • Déléguer le déploiement des fonctions à un Maître d'Ouvrage .

    Si vous déployez uniquement des fonctions non HTTP, un éditeur de projet peut déployer vos fonctions.

  • Déléguez le déploiement des fonctions à un membre du projet qui a les deux rôles suivants :

    Un propriétaire de projet peut attribuer ces rôles à un membre du projet à l'aide de Google Cloud Console ou de la CLI gcloud . Pour connaître les étapes détaillées et les implications de sécurité pour cette configuration de rôle, reportez-vous à la documentation IAM .

Autorisations des campagnes de messagerie Firebase

Ces autorisations s'appliquent aux campagnes pour Firebase Cloud Messaging et Firebase In-App Messaging.

Nom de l'autorisation Description
firebasemessagingcampaigns.campaigns.create Créer de nouvelles campagnes
firebasemessagingcampaigns.campaigns.delete Supprimer des campagnes existantes
firebasemessagingcampaigns.campaigns.get Récupérer les détails des campagnes existantes
firebasemessagingcampaigns.campaigns.list Récupérer une liste des campagnes existantes
firebasemessageriecampagnes.campagnes.mise à jour Mettre à jour les campagnes existantes
firebasemessagingcampaigns.campaigns.start Démarrer des campagnes existantes
firebasemessagingcampaigns.campaigns.stop Mettre à jour les campagnes existantes

Autorisations Firebase Cloud Messaging

Nom de l'autorisation Description
cloudmessaging.messages.create Envoyer des notifications et des messages de données via l'API HTTP FCM et le SDK d'administration
Nom de l'autorisation Description
firebasenotifications.messages.create Créer de nouveaux messages dans l'éditeur de notifications
firebasenotifications.messages.delete Supprimer les messages existants dans l'éditeur de notifications
firebasenotifications.messages.get Récupérer les détails des messages existants dans le composeur de notifications
firebasenotifications.messages.list Récupérer une liste des messages existants dans le composeur de notifications
firebasenotifications.messages.update Mettre à jour les messages existants dans l'éditeur de notifications

Autorisations Firebase Crashlytics

Nom de l'autorisation Description
firebasecrashlytics.config.get Récupérer les paramètres de configuration de Crashlytics
firebasecrashlytics.config.update Mettre à jour les paramètres de configuration de Crashlytics
firebasecrashlytics.data.get Récupérer les métriques associées aux problèmes et sessions Crashlytics
firebasecrashlytics.issues.get Récupérer des détails sur les problèmes Crashlytics, y compris les notes jointes aux problèmes
firebasecrashlytics.issues.list Récupérer une liste des problèmes Crashlytics
firebasecrashlytics.issues.update Ouvrir, fermer et désactiver les problèmes Crashlytics existants
Notes de mise à jour jointes aux problèmes
firebasecrashlytics.sessions.get Récupérer des détails sur les sessions de plantage Crashlytics
Nom de l'autorisation Description
firebasecrash.issues.update Mettez à jour les problèmes Crashlytics existants, créez des notes sur les problèmes et définissez des alertes de vélocité
firebasecrash.reports.get Récupérer les rapports Crashlytics existants
Nom de l'autorisation Description
firebasedynamiclinks.domains.create Créer de nouveaux domaines Dynamic Links
firebasedynamiclinks.domains.delete Supprimer les domaines Dynamic Links existants
firebasedynamiclinks.domains.get Récupérer les détails des domaines Dynamic Links existants
firebasedynamiclinks.domains.list Récupérer une liste des domaines Dynamic Links existants
firebasedynamiclinks.domains.update Mettre à jour les domaines Dynamic Links existants
firebasedynamiclinks.links.create Créer de nouveaux liens dynamiques
firebasedynamiclinks.links.get Récupérer les détails des liens dynamiques existants
firebasedynamiclinks.links.list Récupérer une liste des liens dynamiques existants
firebasedynamiclinks.links.update Mettre à jour les liens dynamiques existants
firebasedynamiclinks.stats.get Récupérer les statistiques des liens dynamiques
firebasedynamiclinks.destinations.list Récupérer les destinations Dynamic Links existantes
firebasedynamiclinks.destinations.update Mettre à jour les destinations Dynamic Links existantes

Autorisations d'hébergement Firebase

Nom de l'autorisation Description
firebasehosting.sites.create Créer de nouvelles ressources d'hébergement pour un projet Firebase
firebasehosting.sites.delete Supprimer les ressources d'hébergement existantes pour un projet Firebase
firebasehosting.sites.get Récupérer les détails d'une ressource d'hébergement existante pour un projet Firebase
firebasehosting.sites.list Récupérer une liste de ressources d'hébergement pour un projet Firebase
firebasehosting.sites.update Mettre à jour les ressources d'hébergement existantes pour un projet Firebase

Autorisations Firebase In-App Messaging (bêta)

Nom de l'autorisation Description
firebaseinappmessaging.campagnes.créer Créer de nouvelles campagnes
firebaseinappmessaging.campaigns.delete Supprimer des campagnes existantes
firebaseinappmessaging.campagnes.get Récupérer les détails des campagnes existantes
firebaseinappmessaging.campaigns.list Récupérer une liste des campagnes existantes
firebaseinappmessaging.campagnes.mise à jour Mettre à jour les campagnes existantes

Autorisations Firebase ML (bêta)

Nom de l'autorisation Description
firebaseml.compressionjobs.create Créer de nouvelles tâches de compression
firebaseml.compressionjobs.delete Supprimer les tâches de compression existantes
firebaseml.compressionjobs.get Récupérer les détails des tâches de compression existantes
firebaseml.compressionjobs.list Récupérer une liste des tâches de compression existantes
firebaseml.compressionjobs.start Démarrer des tâches de compression
firebaseml.compressionjobs.update Mettre à jour les tâches de compression existantes
firebaseml.models.create Créer de nouveaux modèles de ML
firebaseml.models.update Mettre à jour les modèles de ML existants
firebaseml.models.delete Supprimer les modèles de ML existants
firebaseml.models.get Récupérer les détails des modèles ML existants
firebaseml.models.list Récupérer une liste des modèles de ML existants
firebaseml.modelversions.create Créer de nouvelles versions de modèle
firebaseml.modelversions.get Récupérer les détails des versions de modèles existantes
firebaseml.modelversions.list Récupérer une liste des versions de modèles existantes
firebaseml.modelversions.update Mettre à jour les versions de modèle existantes

Autorisations de surveillance des performances Firebase

Nom de l'autorisation Description
firebaseperformance.config.create Créer de nouvelles configurations de seuil de problème
firebaseperformance.config.delete Supprimer les configurations de seuil de problème existantes
firebaseperformance.config.update Modifier les configurations de seuil d'alerte et de problème existantes
firebaseperformance.data.get Afficher toutes les données de performances et les valeurs de seuil de problème

Autorisations de la base de données en temps réel Firebase

Nom de l'autorisation Description
firebasedatabase.instances.create Créer de nouvelles instances de base de données
firebasedatabase.instances.get Récupérer les métadonnées des instances de bases de données existantes
Accès en lecture seule aux données d'une instance de base de données existante
firebasedatabase.instances.list Récupérer une liste d'instances de base de données existantes
firebasedatabase.instances.update Accès complet en lecture et en écriture aux données dans les instances de base de données existantes
Activer et désactiver les instances de base de données
Récupérer et modifier les règles de sécurité pour les instances de base de données existantes
firebasedatabase.instances.disable Désactiver les instances de base de données actives

Les données existantes sont conservées mais ne sont pas accessibles en lecture/écriture.
firebasedatabase.instances.reenable Réactiver les instances de base de données désactivées

Les données existantes sont à nouveau accessibles en lecture/écriture.
firebasedatabase.instances.delete Supprimer les instances de base de données désactivées

Les noms de base de données supprimés ne peuvent pas être réutilisés.
Les données d'une instance de base de données supprimée sont définitivement supprimées après 20 jours.
firebasedatabase.instances.undelete Récupérer une instance de base de données supprimée avant que ses données ne soient définitivement supprimées

Les données d'une instance de base de données supprimée sont définitivement supprimées 20 jours après la suppression de l'instance.

Autorisations de configuration à distance Firebase

Nom de l'autorisation Description
cloudconfig.configs.get Récupérer les données de configuration à distance
cloudconfig.configs.update Mettre à jour les données de configuration à distance

Autorisations du laboratoire de test Firebase

Test Lab nécessite l'accès aux buckets Cloud Storage. Il nécessite donc une configuration spécifique d'autorisations qui ne sont pas toutes incluses dans les rôles Firebase prédéfinis standard . Pour accorder l'accès à Test Lab, utilisez l'une des options suivantes :

  • Pour les tests lancés depuis la console Firebase

    • Testez votre application dans un projet Firebase distinct dédié.

    • Ajoutez des membres qui ont besoin d'accéder à Test Lab, puis attribuez-leur des rôles de projet hérités à l'aide de la console Firebase .

      • Pour autoriser un membre à exécuter des tests avec Test Lab, attribuez un éditeur de projet ou supérieur.
      • Pour autoriser un membre à afficher les résultats des tests dans Test Lab, attribuez Project Viewer ou supérieur.
  • Pour les tests démarrés à partir de l'interface de ligne de commande gcloud ou de l'API de test tout en utilisant votre propre bucket Cloud Storage

    • Attribuez une paire de rôles prédéfinis (qui accordent ensemble l'ensemble d'autorisations requis) à l'aide de Google Cloud Console .

      • Pour autoriser un membre à exécuter des tests avec Test Lab, attribuez à la fois :

        • Administrateur du laboratoire de test Firebase ( roles/cloudtestservice.testAdmin )
        • Lecteur Firebase Analytics ( roles/firebase.analyticsViewer )
      • Pour autoriser un membre à afficher les résultats des tests dans Test Lab, attribuez à la fois :

        • Visionneuse Firebase Test Lab ( roles/cloudtestservice.testViewer )
        • Lecteur Firebase Analytics ( roles/firebase.analyticsViewer )
Nom de l'autorisation Description
cloudtestservice.environmentcatalog.get Récupérer le catalogue des environnements de test supportés pour un projet
cloudtestservice.matrices.create Demande d'exécution d'une matrice de tests selon les spécifications données
cloudtestservice.matrices.get Récupérer le statut d'une matrice de test
cloudtestservice.matrices.update Mettre à jour une matrice de test inachevée
cloudtoolresults.executions.list Récupérer une liste d'exécutions pour un historique
cloudtoolresults.executions.get Récupérer une Exécution existante
cloudtoolresults.executions.create Créer une nouvelle exécution
cloudtoolresults.executions.update Mettre à jour une exécution existante
cloudtoolresults.histories.list Récupérer une liste d'historiques
cloudtoolresults.histories.get Récupérer un historique existant
cloudtoolresults.histories.create Créer un nouvel historique
cloudtoolresults.settings.create Créer de nouveaux paramètres de résultats d'outil
cloudtoolresults.settings.get Récupérer les paramètres de résultats d'outils existants
cloudtoolresults.settings.update Mettre à jour les paramètres des résultats de l'outil
cloudtoolresults.steps.list Récupérer une liste d'étapes pour une exécution
cloudtoolresults.steps.get Récupérer une étape existante
cloudtoolresults.steps.create Créer une nouvelle étape
cloudtoolresults.steps.update Mettre à jour une étape existante

Intégrations avec les autorisations de services externes

Nom de l'autorisation Description
firebaseextensions.configs.create Créer de nouvelles configurations d'extension pour les services externes
(Console Firebase > Paramètres du projet > Intégrations)
firebaseextensions.configs.delete Supprimer les configurations d'extension existantes pour les services externes
(Console Firebase > Paramètres du projet > Intégrations)
firebaseextensions.configs.list Récupérer une liste des configurations d'extension pour les services externes
(Console Firebase > Paramètres du projet > Intégrations)
firebaseextensions.configs.update Mettre à jour les configurations d'extension existantes pour les services externes
(Console Firebase > Paramètres du projet > Intégrations)