Gérer l'accès au projet avec Firebase IAM

Identity and Access Management (IAM) vous permet d'accorder un accès précis à des ressources Firebase et Google spécifiques, et d'empêcher tout accès indésirable à d'autres ressources. IAM vous permet d'adopter le principe de sécurité du moindre privilège, afin de n'accorder que l'accès nécessaire à vos ressources.

Pour obtenir une description détaillée d'IAM, consultez la Google Cloud documentation IAM.

Présentation de Firebase IAM

Firebase propose des options IAM supplémentaires spécifiques aux projets Firebase et à leurs membres.

Lorsqu'un membre authentifié du projet demande une action dans Firebase, IAM prend une décision d'autorisation pour déterminer si le membre du projet est autorisé à effectuer l'opération demandée sur la ressource. L'autorisation d'effectuer la requête dépend du rôle attribué au membre du projet. Chaque rôle est un ensemble d'autorisations. Lorsque vous attribuez un rôle à un membre du projet, vous lui accordez toutes les autorisations associées.

Membres du projet

Avec Firebase IAM, vous attribuez des rôles (et les autorisations inhérentes) aux membres de votre projet. Il existe plusieurs types de membres :

  • Compte Google
  • Compte de service
  • Groupe Google

Rôles

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 lui accordez toutes les autorisations contenues dans ce rôle.

Firebase IAM est compatible avec les types de rôles suivants :

  • Rôles de base : rôles fondamentaux Propriétaire, Éditeur et Lecteur (anciennement appelés "rôles primitifs").

  • Rôles prédéfinis: rôles Firebase spécifiques et organisés qui permettent un contrôle d'accès plus précis que les rôles de base. Firebase propose les rôles suivants :

    • Rôles au niveau de Firebase : rôles qui accordent un accès complet en lecture/écriture ou en lecture seule à tous les produits Firebase.

    • Rôles par catégorie de produits : rôles qui accordent un accès complet en lecture/écriture ou en lecture seule à des groupes de produits. Ils sont structurés autour de Google Analytics et des catégories de produits générales.

    • Rôles au niveau des produits : rôles qui accordent un accès complet en lecture/écriture ou en lecture seule à des produits Firebase spécifiques.

  • Rôles personnalisés : rôles entièrement personnalisés que vous créez pour adapter un ensemble d'autorisations qui répondent aux exigences spécifiques de votre organisation.

Gérer les membres du projet et leurs rôles

Afficher les membres du projet et leurs rôles

Vous pouvez afficher de nombreux membres de votre projet et leurs rôles dans l' onglet Paramètres > Utilisateurs et autorisations de la console Firebase. Remarques :
  • La console Firebase ne répertorie que les membres du projet auxquels un rôle de base (Propriétaire, Éditeur, Lecteur) ou un rôle prédéfini Firebase est attribué. Les membres du projet listés dans cet onglet sont les seuls à avoir accès au projet Firebase dans la Firebase console.
  • La console Firebase ne répertorie pas les membres du projet qui sont des comptes de service. Affichez ces membres du projet sur la page IAM et administration > IAM de la console Google Cloud.
Vous pouvez également afficher tous les membres de votre projet et leurs rôles sur la page IAM et administration > IAM de la console Google Cloud.

Attribuer un rôle à un membre du projet

Pour gérer les rôles attribués à chaque membre du projet, vous devez être propriétaire de le projet Firebase (ou disposer d'un rôle avec l'autorisation resourcemanager.projects.setIamPolicy).

Voici les endroits où vous pouvez attribuer et gérer des rôles :

Si le propriétaire de votre projet ne peut plus effectuer les tâches d'un propriétaire (par exemple, s'il a quitté votre entreprise) et que votre projet n'est pas géré via une Google Cloud organisation (voir le paragraphe suivant), vous pouvez contacter l'assistance Firebase et lui demander comment demander l'accès au projet Firebase.

Notez que si un projet Firebase fait partie d'une organisation Google Cloud, il est possible qu'il n'ait pas de propriétaire. Si vous ne parvenez pas à trouver de propriétaire pour votre projet Firebase, contactez la personne qui gère votre Google Cloud organisation pour attribuer un propriétaire au projet.