Google Cloud propose Cloud Identity and Access Management (Cloud IAM), qui vous permet de définir de manière plus précise l'accès à des ressources spécifiques de Google Cloud 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.
Grâce à l'IAM, vous pouvez contrôler qui (utilisateurs) a accès (rôles) à quelles ressources en définissant des stratégies IAM. Ces stratégies permettent d'attribuer un ou plusieurs rôles spécifiques à un utilisateur afin de lui accorder certaines autorisations.
Cette page décrit les rôles IAM disponibles au niveau des dossiers et explique comment créer et gérer des stratégies IAM applicables aux dossiers à l'aide de l'API Cloud Resource Manager. Pour obtenir une description détaillée de IAM, consultez la documentation IAM, et en particulier la page Accorder, modifier et révoquer les accès à des ressources.
Présentation des rôles IAM applicables aux dossiers
Pour configurer les rôles IAM, reportez-vous au tableau ci-dessous qui répertorie les éléments suivants :
- Le type d'actions que vous souhaitez autoriser
- Les rôles requis pour effectuer ces actions
- Le niveau de la ressource pour laquelle vous devez attribuer ces rôles
Type d'action | Rôles requis | Niveau de la ressource |
---|---|---|
Administrer des dossiers dans l'ensemble de la ressource "Organisation" | Administrateur de dossier | Ressource d'organisation |
Administrer un dossier et tous les projets et dossiers qu'il contient | Administrateur de dossier | Dossier spécifique |
Accéder à un dossier et administrer ses stratégies IAM | Administrateur IAM de dossier | Dossier spécifique |
Créer des dossiers | Créateur de dossier | Ressource parente de l'emplacement des nouveaux dossiers |
Déplacer des dossiers et des projets | Déplaceur de dossier | Ressource parente de l'emplacement d'origine et du nouvel emplacement du dossier |
Déplacer un projet dans un nouveau dossier | Éditeur ou propriétaire de projet | Ressource parente de l'emplacement d'origine et du nouvel emplacement du projet |
Supprimer un dossier | Éditeur ou administrateur de dossier | Dossier spécifique |
Bonnes pratiques pour l'utilisation des rôles et des autorisations IAM avec des dossiers
Lorsque vous attribuez des rôles et des autorisations IAM pour l'utilisation des dossiers, vous devez garder à l'esprit les points suivants :
- Utilisez des groupes autant que possible pour gérer les comptes principaux.
- Réduisez l'utilisation des rôles de base, tels que "Propriétaire", "Éditeur" et "Lecteur". À la place, essayez d'utiliser les rôles prédéfinis pour appliquer le principe de moindre privilège.
- Pour une gestion à l'échelle du dossier, attribuez des autorisations à ce niveau et laissez les projets en hériter automatiquement. Par exemple, vous pouvez attribuer le rôle d'Administrateur de dossier à un groupe d'administrateurs d'un service. Les administrateurs réseau qui ont besoin d'autorisations à l'échelle du service peuvent se voir attribuer le rôle d'Administrateur réseau pour le dossier.
- Avant de déplacer une ressource hors d'un dossier, évaluez soigneusement les autorisations susceptibles de changer. Sinon, vous risqueriez de détruire des applications existantes ou des flux de travaux nécessitant ces autorisations pour utiliser cette ressource.
- Prenez soin de planifier et de tester la hiérarchie des ressources avant de déplacer des projets de production dans des dossiers. Pour ce faire, vous pouvez créer un dossier de test sous votre ressource organisationnelle et créer un prototype de la hiérarchie prévue à l'avance.
- L'attribution d'un rôle à un utilisateur au niveau du dossier lui accordera également ce rôle pour chaque ressource située sous ce dossier. Par exemple, si vous accordez à un utilisateur le rôle Administrateur Compute (
roles/compute.admin
) sur un dossier, cet utilisateur aura le contrôle total de toutes les ressources Compute Engine dans chaque projet de ce dossier.
Comprendre les rôles et les autorisations applicables aux dossiers
Rôles par défaut
Lorsque vous créez un dossier, les rôles d'Administrateur de dossier et d'Éditeur de dossier vous sont attribués pour vous procurer un contrôle total en tant que créateur. Les autorisations que fournissent ces rôles sont décrites ci-dessous. Vous pouvez modifier ces rôles par défaut en appliquant la procédure usuelle via une stratégie IAM.
Utiliser des rôles prédéfinis
Rôle | Autorisations |
---|---|
Administrateur de dossier( Fournit toutes les autorisations disponibles pour utiliser des dossiers. Ressources de niveau inférieur auxquelles vous pouvez attribuer ce rôle :
|
|
Administrateur IAM de dossiers( Fournit les autorisations nécessaires pour administrer les stratégies d'autorisation appliquées à des dossiers. Ressources de niveau inférieur auxquelles vous pouvez attribuer ce rôle :
|
|
Créateur de dossier( Fournit les autorisations nécessaires pour parcourir la hiérarchie et créer des dossiers. Ressources de niveau inférieur auxquelles vous pouvez attribuer ce rôle :
|
|
Éditeur de dossier( Fournit les autorisations nécessaires pour modifier des dossiers et afficher la stratégie d'autorisation d'un dossier. Ressources de niveau inférieur auxquelles vous pouvez attribuer ce rôle :
|
|
Déplaceur de dossier( Permet de déplacer des projets et des dossiers dans une organisation ou un dossier parent, ou en dehors. Ressources de niveau inférieur auxquelles vous pouvez attribuer ce rôle :
|
|
Lecteur de dossier( Permet d'obtenir un dossier, et de répertorier les dossiers et les projets situés sous une ressource. Ressources de niveau inférieur auxquelles vous pouvez attribuer ce rôle :
|
|
Créer des rôles personnalisés
En plus des rôles prédéfinis décrits dans cette rubrique, vous pouvez créer des rôles personnalisés regroupant des autorisations adaptées à vos besoins. Lorsque vous créez un rôle personnalisé à utiliser avec Resource Manager, vous devez tenir compte des points suivants :- Les autorisations de type obtenir/répertorier, telles que
resourcemanager.projects.get/list
, doivent toujours être accordées en tant que paire. - Lorsque votre rôle personnalisé inclut les éléments
folders.list
etfolders.get
les autorisations, il doit également inclureprojects.list
etprojects.get
. - Sachez que l'autorisation
setIamPolicy
pour l'organisation, le dossier et les ressources de projet permettent à l'utilisateur d'accorder toutes les autres autorisations et doivent donc être attribuées avec précaution.
Attribuer des rôles pour naviguer dans des dossiers
Les autorisations de liste permettent la navigation dans les dossiers. Les deux types
d'autorisations de liste
doivent généralement être accordées sont resourcemanager.folders.list
, ce qui permet
aux utilisateurs de répertorier les dossiers d'une ressource, et resourcemanager.projects.list
,
qui permet aux utilisateurs de parcourir les projets
sous une ressource d'organisation ou un dossier. L'administrateur d'organisation est initialisé avec ces deux autorisations. Pour les utilisateurs auxquels le rôle d'Administrateur de l'organisation n'a pas été attribué :
- L'autorisation
resourcemanager.folders.list
peut être accordée via les rôles de Lecteur de dossier et d'Éditeur de dossier. - L'autorisation
resourcemanager.projects.list
peut être accordée via les rôles de Lecteur ou d'Explorateur.
Pour que les comptes principaux des ressources d'organisation puissent parcourir l'ensemble de la hiérarchie des ressources de l'organisation, listez les autorisations doivent être accordées au niveau de la ressource Organisation.
Attribuer des rôles pour créer des dossiers
Les utilisateurs devant créer des dossiers doivent se voir attribuer le rôle de Créateur de dossier pour une ressource de la hiérarchie située au-dessus du niveau auquel le dossier sera créé. Il peut être utile d’accorder des autorisations de navigation et de création de dossier pour permettre aux utilisateurs d'accéder efficacement à l'emplacement dans la hiérarchie où le dossier sera créé. Pour en savoir plus sur les autorisations de navigation, consultez la section ci-dessus.
Le rôle de Créateur de dossier n'accorde pas à un utilisateur l'autorisation de supprimer un dossier. Toutefois, lorsqu'une personne crée un dossier, le rôle d'Éditeur de dossier lui est automatiquement attribué. Le rôle d'Éditeur de dossier permet de supprimer des dossiers.
Attribuer des rôles pour déplacer des dossiers
Pour déplacer un dossier d'une ressource parente vers une autre, les utilisateurs doivent disposer du rôle de Déplaceur de dossier pour chacune des ressources parentes, l'ancienne et la nouvelle, ou pour un ancêtre commun.
Attribuer des rôles pour déplacer des projets
Pour déplacer un projet dans un dossier, les utilisateurs doivent disposer des rôles d'Éditeur de projet ou de Propriétaire de projet pour le projet en question et du rôle de Déplaceur de projets pour les ressources parentes de départ et de destination.
Ces exigences diffèrent légèrement de celles qui s'appliquent au transfert dans la ressource de l'organisation d'un projet ne lui appartenant pas, qui requiert que les utilisateurs disposent des rôles d'Éditeur de projet ou de Propriétaire de projet pour le projet en question et du rôle de Créateur de projet pour la ressource de l'organisation.
Attribuer des rôles spécifiques à un dossier pour créer des projets
Pour créer des projets, les utilisateurs doivent disposer du rôle de Créateur de projet. Toutefois, au lieu d'accorder l'autorisation de création de projet à l'échelle de l'organisation, il peut être utile de limiter cette autorisation à l'affichage et à la création de projets uniquement dans un dossier donné.
Pour accorder des autorisations spécifiques à un dossier, procédez comme suit :
- Attribuez à l'utilisateur le rôle de Lecteur d'organisation au niveau du nœud de l'organisation (par exemple, domaine.com).
- Créez un dossier.
- Ajoutez l'utilisateur à la stratégie IAM au niveau du dossier et attribuez-lui les rôles de Lecteur de dossier et de Créateur de projet.
Cela permet à l'utilisateur de créer des projets dans son dossier, sans lui accorder de visibilité globale sur chacun des projets de la ressource de l'organisation.