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 contenues dans le rôle.

Cette page décrit les actions activées par les autorisations que vous pourriez 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 les autorisations suivantes :

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 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 les commandes Firebase CLI

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 (notamment Slack, Jira et PagerDuty) firebaseextensions.configs.*
Afficher l'utilisation et les analyses de StackDriver surveillance.timeSeries.list
Exécuter les commandes CLI Firebase
Pour plus d'informations, consultez la documentation Google Cloud sur l'accès au Runtime Configurator .
configuration d'exécution.*

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 plan de facturation d'un projet Firebase Resourcemanager.projects.createBillingAssignment
Resourcemanager.projects.deleteBillingAssignment
firebase.projects.delete
Supprimer un projet Firebase Resourcemanager.projects.delete
firebase.projects.update
Ajouter des ressources Firebase à un projet Google Cloud existant gestionnaire de ressources.projects.get
serviceusage.services.enable
serviceusage.services.get
Changer le nom d'un projet Firebase ressourcemanager.projects.update
Ajouter les empreintes digitales du 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 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 plan de facturation Firebase actuel pour un projet
firebase.clients.create Ajouter de nouvelles applications à un projet
firebase.clients.delete Supprimer les applications existantes d'un projet
firebase.clients.get Récupérer les détails et les configurations des applications dans un projet
firebase.clients.list Récupérer une liste d'applications dans un projet
firebase.clients.undelete Annuler la suppression d'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.update 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.update Créez de nouveaux liens et mettez à jour les liens existants vers Google Play
(Console Firebase > Paramètres du projet > Intégrations > Google Play)
firebase.projects.delete Supprimer les projets existants
firebase.projects.get Récupérer les détails et les ressources Firebase d'un projet
firebase.projects.update Modifier les attributs d'un projet existant
Recevez des alertes pour les produits et fonctionnalités Firebase applicables ( en savoir plus )
firebaseinstallations.instances.delete Supprimez 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, notamment les audiences, les propriétés des utilisateurs, les entonnoirs, les rapports, les conversions, etc.

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

Autorisations de vérification de l'application Firebase

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 de l'attestation d'application 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 inviter des liens
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 de 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 d'authentification
firebaseauth.configs.getHashConfig Obtenez la configuration de hachage de mot de passe et le hachage de mot de passe des comptes d'utilisateurs
firebaseauth.configs.getSecret Récupérez 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 les tests existants
firebaseabt.experiments.get Récupérer les détails d'une expérience existante
firebaseabt.experiments.list Récupérer une liste d'expériences existantes
firebaseabt.experiments.update Mettre à jour un test existant
firebaseabt.projectmetadata.get Récupérer les métadonnées d'analyse pour configurer une expérience

Autorisations Cloud Firestore

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

Autorisations de stockage cloud

Pour obtenir la liste et les descriptions des autorisations Cloud Storage, reportez-vous à 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 des exécutables binaires pour les versions
firebaserules.releases.list Récupérer une liste de 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 des ensembles de règles avec la source
firebaserules.rulesets.list Rechercher des métadonnées d'ensemble de règles (aucune source)
firebaserules.rulesets.test Vérifier l'exactitude des sources

Fonctions Cloud pour les autorisations Firebase

Pour obtenir la liste et les descriptions des autorisations Cloud Functions, reportez-vous à 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 standards de Firebase . Pour déployer des fonctions, utilisez l'une des options suivantes :

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 les 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
firebasemessagingcampaigns.campaigns.update Mettre à jour les campagnes existantes
firebasemessagingcampaigns.campaigns.start Démarrer des campagnes existantes
firebasemessagingcampaigns.campaigns.stop Mettre à jour les campagnes existantes

Autorisations de messagerie cloud Firebase

Nom de l'autorisation Description
cloudmessaging.messages.créer Envoyez des notifications et des messages de données via l'API HTTP FCM et le SDK Admin
Nom de l'autorisation Description
firebasenotifications.messages.créer Créer de nouveaux messages dans le composeur de notifications
firebasenotifications.messages.delete Supprimer les messages existants dans le composeur de notifications
firebasenotifications.messages.get Récupérer les détails des messages existants dans le compositeur 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 le composeur 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 aux 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
Mettre à jour les notes jointes aux problèmes
firebasecrashlytics.sessions.get Récupérer des détails sur les sessions de crash de 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 de 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 des destinations Dynamic Links existantes
firebasedynamiclinks.destinations.update Mettre à jour les destinations Dynamic Links existantes

Autorisations de publication des extensions Firebase

Nom de l'autorisation Description
firebaseextensionspublisher.extensions.create Télécharger de nouvelles versions d'une extension
firebaseextensionspublisher.extensions.delete Supprimer ou rendre obsolètes les versions d'une extension
firebaseextensionspublisher.extensions.get Récupérer des détails sur une version d'extension
firebaseextensionspublisher.extensions.list Répertorier toutes les versions d'extension téléchargées par ce projet d'éditeur

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 de messagerie Firebase In-App (bêta)

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

Autorisations Firebase ML (bêta)

Nom de l'autorisation Description
firebaseml.models.create Créer de nouveaux modèles ML
firebaseml.models.update Mettre à jour les modèles ML existants
firebaseml.models.delete Supprimer les modèles 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 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èles 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 d'alerte et de seuil de problème existant
firebaseperformance.data.get Afficher toutes les données de performances et émettre des valeurs de seuil

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

Nom de l'autorisation Description
firebaseddatabase.instances.create Créer de nouvelles instances de base de données
firebaseddatabase.instances.get Récupérer les métadonnées des instances de base de données existantes
Accès en lecture seule aux données dans une instance de base de données existante
firebaseddatabase.instances.list Récupérer une liste des instances de base de données existantes
firebaseddatabase.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
firebaseddatabase.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.
firebaseddatabase.instances.reenable Réactiver les instances de base de données désactivées

Les données existantes sont à nouveau accessibles pour les lectures/écritures.
firebaseddatabase.instances.delete Supprimer les instances de base de données désactivées

Les noms de bases 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.
firebaseddatabase.instances.undelete Annuler la suppression d'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 un 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 prédéfinis Firebase standard. Pour accorder l'accès à Test Lab, utilisez l'une des options suivantes :

  • Pour les tests démarré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 existants à l'aide de la console Firebase .

      • Pour permettre à un membre d'exécuter des tests avec Test Lab, attribuez un éditeur de projet ou supérieur.
      • Pour permettre à un membre d'afficher les résultats des tests dans Test Lab, attribuez une visionneuse de projet ou une version supérieure.
  • Pour les tests démarrés à partir de gcloud CLI , de l' API Testing ou des appareils gérés par Gradle 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 la console Google Cloud .

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

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

        • Visionneuse de laboratoire de test Firebase ( roles/cloudtestservice.testViewer )
        • Visionneuse Firebase Analytics ( roles/firebase.analyticsViewer )
Nom de l'autorisation Description
cloudtestservice.environmentcatalog.get Récupérer le catalogue des environnements de test pris en charge 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 l'état 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 une nouvelle histoire
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 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 de 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)