Points de contrôle
Create a custom role using a YAML file
/ 20
Create a custom role using flags
/ 20
Update a custom role using a YAML file
/ 15
Update a custom role using flags
/ 15
Disabling a custom role
/ 15
Undeleting a custom role
/ 15
Rôles IAM personnalisés
- GSP190
- Présentation
- Préparation
- Présentation des rôles IAM personnalisés
- Tâche 1 : Afficher les autorisations disponibles pour une ressource
- Tâche 2 : Obtenir les métadonnées du rôle
- Tâche 3 : Voir les rôles pouvant être attribués sur les ressources
- Tâche 4 : Créer un rôle personnalisé
- Tâche 5 : Lister les rôles personnalisés
- Tâche 6 : Mettre à jour un rôle personnalisé existant
- Tâche 7 : Désactiver un rôle personnalisé
- Tâche 8 : Supprimer un rôle personnalisé
- Tâche 9 : Restaurer un rôle personnalisé
- Félicitations !
GSP190
Présentation
Avec Cloud IAM, vous disposez des outils nécessaires pour gérer les autorisations liées aux ressources de façon simple et automatisable. Vous n'accordez pas directement d'autorisations aux utilisateurs. Vous leur accordez plutôt des rôles englobant une ou plusieurs autorisations. Ainsi, vous pouvez affecter les postes au sein de votre entreprise à des groupes et des rôles, afin que les utilisateurs n'aient accès qu'aux ressources dont ils ont besoin. De leur côté, les administrateurs peuvent facilement accorder des autorisations par défaut à tout un groupe d'utilisateurs.
Il existe deux types de rôles dans Cloud IAM :
- Rôles prédéfinis
- Rôles personnalisés
Les rôles prédéfinis sont créés et gérés par Google. Leurs autorisations sont automatiquement mises à jour si nécessaire, par exemple en cas d'ajout de nouvelles fonctionnalités ou de nouveaux services à Google Cloud.
Les rôles personnalisés sont définis par l'utilisateur et permettent de grouper une ou plusieurs autorisations disponibles selon vos besoins spécifiques. Les rôles personnalisés ne sont pas gérés par Google. En cas d'ajout d'autorisations, de fonctionnalités ou de services à Google Cloud, vos rôles personnalisés ne sont pas mis à jour automatiquement. Vous créez un rôle personnalisé en associant une ou plusieurs des autorisations Cloud IAM disponibles. Les autorisations permettent aux utilisateurs de réaliser des opérations spécifiques sur les ressources Google Cloud.
Points abordés
Dans cet atelier, vous allez créer, mettre à jour, supprimer et restaurer des rôles personnalisés.
Prérequis
Une bonne connaissance des rôles IAM permet d'optimiser l'apprentissage.
Préparation
Avant de cliquer sur le bouton "Démarrer l'atelier"
Lisez ces instructions. Les ateliers sont minutés, et vous ne pouvez pas les mettre en pause. Le minuteur, qui démarre lorsque vous cliquez sur Démarrer l'atelier, indique combien de temps les ressources Google Cloud resteront accessibles.
Cet atelier pratique vous permet de suivre vous-même les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Nous vous fournissons des identifiants temporaires pour vous connecter à Google Cloud le temps de l'atelier.
Pour réaliser cet atelier :
- vous devez avoir accès à un navigateur Internet standard (nous vous recommandons d'utiliser Chrome) ;
- vous disposez d'un temps limité ; une fois l'atelier commencé, vous ne pouvez pas le mettre en pause.
Démarrer l'atelier et se connecter à la console Google Cloud
-
Cliquez sur le bouton Démarrer l'atelier. Si l'atelier est payant, un pop-up s'affiche pour vous permettre de sélectionner un mode de paiement. Sur la gauche, vous trouverez le panneau Détails concernant l'atelier, qui contient les éléments suivants :
- Le bouton Ouvrir la console Google Cloud
- Le temps restant
- Les identifiants temporaires que vous devez utiliser pour cet atelier
- Des informations complémentaires vous permettant d'effectuer l'atelier
-
Cliquez sur Ouvrir la console Google Cloud (ou effectuez un clic droit et sélectionnez Ouvrir le lien dans la fenêtre de navigation privée si vous utilisez le navigateur Chrome).
L'atelier lance les ressources, puis ouvre la page Se connecter dans un nouvel onglet.
Conseil : Réorganisez les onglets dans des fenêtres distinctes, placées côte à côte.
Remarque : Si la boîte de dialogue Sélectionner un compte s'affiche, cliquez sur Utiliser un autre compte. -
Si nécessaire, copiez le nom d'utilisateur ci-dessous et collez-le dans la boîte de dialogue Se connecter.
{{{user_0.username | "Username"}}} Vous trouverez également le nom d'utilisateur dans le panneau Détails concernant l'atelier.
-
Cliquez sur Suivant.
-
Copiez le mot de passe ci-dessous et collez-le dans la boîte de dialogue Bienvenue.
{{{user_0.password | "Password"}}} Vous trouverez également le mot de passe dans le panneau Détails concernant l'atelier.
-
Cliquez sur Suivant.
Important : Vous devez utiliser les identifiants fournis pour l'atelier. Ne saisissez pas ceux de votre compte Google Cloud. Remarque : Si vous utilisez votre propre compte Google Cloud pour cet atelier, des frais supplémentaires peuvent vous être facturés. -
Accédez aux pages suivantes :
- Acceptez les conditions d'utilisation.
- N'ajoutez pas d'options de récupération ni d'authentification à deux facteurs (ce compte est temporaire).
- Ne vous inscrivez pas à des essais gratuits.
Après quelques instants, la console Cloud s'ouvre dans cet onglet.
Activer Cloud Shell
Cloud Shell est une machine virtuelle qui contient de nombreux outils pour les développeurs. Elle comprend un répertoire d'accueil persistant de 5 Go et s'exécute sur Google Cloud. Cloud Shell vous permet d'accéder via une ligne de commande à vos ressources Google Cloud.
- Cliquez sur Activer Cloud Shell en haut de la console Google Cloud.
Une fois connecté, vous êtes en principe authentifié et le projet est défini sur votre ID_PROJET. Le résultat contient une ligne qui déclare YOUR_PROJECT_ID (VOTRE_ID_PROJET) pour cette session :
gcloud
est l'outil de ligne de commande pour Google Cloud. Il est préinstallé sur Cloud Shell et permet la complétion par tabulation.
- (Facultatif) Vous pouvez lister les noms des comptes actifs à l'aide de cette commande :
-
Cliquez sur Autoriser.
-
Vous devez à présent obtenir le résultat suivant :
Résultat :
- (Facultatif) Vous pouvez lister les ID de projet à l'aide de cette commande :
Résultat :
Exemple de résultat :
gcloud
, dans Google Cloud, accédez au guide de présentation de la gcloud CLI.
Définir la région de votre projet
Exécutez la commande suivante pour définir la région de votre projet :
Présentation des rôles IAM personnalisés
Cloud IAM offre également la possibilité de créer des rôles Cloud IAM personnalisés. Vous pouvez créer un rôle Cloud IAM personnalisé avec une ou plusieurs autorisations, puis attribuer ce rôle personnalisé aux utilisateurs. Cloud IAM fournit une UI et une API pour créer et gérer des rôles personnalisés.
Point important : Les rôles personnalisés vous permettent d'appliquer le principe du moindre privilège, qui vous assure que les comptes utilisateur et de service de votre organisation ne disposent que des autorisations essentielles à l'exécution des tâches prévues.
Vous créez un rôle personnalisé en associant une ou plusieurs des autorisations Cloud IAM disponibles. Les autorisations permettent aux utilisateurs de réaliser des opérations spécifiques sur les ressources Google Cloud.
Dans le monde Cloud IAM, les autorisations sont représentées sous la forme suivante :
Par exemple, l'autorisation compute.instances.list
permet à un utilisateur de lister les instances Compute Engine dont il est propriétaire, tandis que compute.instances.stop
permet à un utilisateur d'arrêter une VM.
Les autorisations sont généralement, mais pas toujours, mappées sur les méthodes REST. Autrement dit, pour chaque méthode REST proposée par un service Google Cloud, il existe une autorisation correspondante. Pour appeler une méthode, l'appelant a besoin de cette autorisation. Par exemple, l'appelant de topic.publish()
a besoin de l'autorisation pubsub.topics.publish
.
Les rôles personnalisés ne peuvent être utilisés que pour accorder des autorisations dans des stratégies pour le même projet ou la même organisation qui possède les rôles ou les ressources correspondants. Vous ne pouvez pas accorder de rôles personnalisés à partir d'un projet ou d'une organisation sur une ressource appartenant à un autre projet ou à une autre organisation.
Autorisations et rôles requis
Pour créer un rôle personnalisé, un appelant doit disposer de l'autorisation iam.roles.create
.
Les utilisateurs non propriétaires, y compris les administrateurs de l'organisation, doivent se voir attribuer le rôle Administrateur des rôles de l'organisation (roles/iam.organizationRoleAdmin) ou le rôle Administrateur des rôles IAM (roles/iam.roleAdmin). Le rôle Examinateur de sécurité IAM (roles/iam.securityReviewer) permet d'afficher les rôles personnalisés, mais pas de les gérer.
L'interface utilisateur des rôles personnalisés se trouve dans la console Cloud sous "Rôles IAM". Elle est uniquement disponible pour les utilisateurs disposant des autorisations requises pour créer ou gérer des rôles personnalisés. Par défaut, seuls les propriétaires de projet peuvent créer des rôles. Les propriétaires de projet peuvent contrôler l'accès à cette fonctionnalité en attribuant le rôle Administrateur des rôles IAM à d'autres membres du même projet. Pour les organisations, seuls les administrateurs de l'organisation peuvent attribuer le rôle d'Administrateur des rôles de l'organisation.
Préparer la création d'un rôle personnalisé
Avant de créer un rôle personnalisé, il est préférable de connaître les informations suivantes :
- Autorisations pouvant être appliquées à une ressource
- Rôles pouvant être attribués au niveau d'une ressource
- Métadonnées d'un rôle
Tâche 1 : Afficher les autorisations disponibles pour une ressource
Avant de créer un rôle personnalisé, il est préférable de savoir quelles autorisations peuvent être appliquées à une ressource. Vous pouvez obtenir la liste de toutes les autorisations pouvant être appliquées à une ressource, ainsi qu'à celles situées en-dessous dans la hiérarchie, à l'aide de l'outil de ligne de commande gcloud, de la console Cloud ou de l'API IAM. Par exemple, vous pouvez obtenir toutes les autorisations que vous pouvez appliquer à une organisation et aux projets de cette organisation.
- Exécutez la commande suivante pour obtenir la liste des autorisations disponibles pour votre projet :
Résultat :
Tâche 2 : Obtenir les métadonnées du rôle
Avant de créer un rôle personnalisé, il est utile d'obtenir les métadonnées des rôles prédéfinis et personnalisés. Les métadonnées de rôle incluent l'ID de rôle et les autorisations contenues dans le rôle. Vous pouvez afficher les métadonnées à l'aide de la console Cloud ou de l'API IAM.
- Pour afficher les métadonnées d'un rôle, utilisez la commande ci-dessous, en remplaçant
[ROLE_NAME]
par le rôle. Par exemple :roles/viewer
ouroles/editor
:
Exemple de résultat (pour roles/viewer) :
Tâche 3 : Voir les rôles pouvant être attribués sur les ressources
Utilisez la commande gcloud iam list-grantable-roles
pour récupérer la liste de tous les rôles pouvant être appliqués à une ressource donnée.
- Exécutez la commande
gcloud
suivante pour obtenir la liste des rôles pouvant être attribués à partir de votre projet :
Le résultat doit se présenter comme suit :
Tâche 4 : Créer un rôle personnalisé
Pour créer un rôle personnalisé, un appelant doit disposer de l'autorisation iam.roles.create
. Par défaut, le propriétaire d'un projet ou d'une organisation dispose de cette autorisation, et peut créer et gérer des rôles personnalisés.
Les utilisateurs qui ne sont pas propriétaires, y compris les administrateurs de l'organisation, doivent se voir attribuer le rôle Administrateur des rôles de l'organisation ou le rôle Administrateur des rôles IAM.
Vous pouvez utiliser la commande gcloud iam roles create
pour créer des rôles personnalisés de deux manières :
- En fournissant un fichier YAML contenant la définition du rôle
- En précisant la description du rôle à l'aide d'options
Lors de la création d'un rôle personnalisé, vous devez spécifier s'il s'applique au niveau de l'organisation ou au niveau du projet en utilisant l'option --organization [ORGANIZATION-ID]
ou l'option --project [PROJECT-ID]
. Chaque exemple ci-dessous crée un rôle personnalisé au niveau du projet.
Dans les sections suivantes, vous créerez des rôles personnalisés au niveau du projet.
Créer un rôle personnalisé à l'aide d'un fichier YAML
Créez un fichier YAML contenant la définition de votre rôle personnalisé. Le fichier doit être structuré de la manière suivante :
Les valeurs des espaces réservés sont décrites ci-dessous :
-
[ROLE-TITLE]
est un titre convivial pour le rôle (par exemple, Role Viewer). -
[ROLE_DESCRIPTION]
est une brève description du rôle, telle que Description de mon rôle personnalisé. -
[LAUNCH_STAGE]
indique le stade auquel se trouve un rôle dans le cycle de vie du lancement, par exemple ALPHA, BETA ou GA. -
includedPermissions
spécifie une ou plusieurs autorisations à inclure dans le rôle personnalisé (par exemple, iam.roles.get).
- C'est à vous ! Créez le fichier YAML définissant votre rôle en exécutant :
- Ajoutez cette définition de rôle personnalisé au fichier YAML :
-
Enregistrez ensuite le fichier et fermez-le en appuyant successivement sur les touches Ctrl+X, Y, puis Entrée.
-
Exécutez la commande
gcloud
suivante :
Si le rôle a bien été créé, la réponse suivante s'affiche :
Cliquez sur Vérifier ma progression pour valider l'objectif.
Créer un rôle personnalisé à l'aide d'options
Vous allez maintenant utiliser des options pour créer un rôle personnalisé. Les options se présentent comme le fichier YAML, donc vous reconnaîtrez facilement la structure de la commande.
- Exécutez la commande
gcloud
suivante pour créer un rôle en utilisant des options :
Exemple de résultat :
Cliquez sur Vérifier ma progression pour valider l'objectif.
Tâche 5 : Lister les rôles personnalisés
- Exécutez la commande
gcloud
suivante pour obtenir la liste des rôles personnalisés, en spécifiant s'il s'agit de rôles personnalisés au niveau du projet ou de l'organisation :
Exemple de résultat :
Pour lister également les rôles supprimés, vous pouvez spécifier l'option --show-deleted
.
- Exécutez la commande
gcloud
suivante pour afficher la liste des rôles prédéfinis :
Tâche 6 : Mettre à jour un rôle personnalisé existant
Pour actualiser les métadonnées d'une ressource, comme un rôle personnalisé, une approche classique consiste à lire leur état actuel, à mettre à jour les données localement, puis à envoyer les données modifiées pour écriture. Cette approche peut provoquer un conflit si deux processus indépendants ou plus tentent de réaliser ces opérations simultanément.
Par exemple, si deux propriétaires d'un projet tentent d'apporter des modifications conflictuelles à un rôle en même temps, certaines modifications peuvent échouer.
Cloud IAM résout ce problème en utilisant une propriété etag
dans les rôles personnalisés. Cette propriété permet de vérifier si le rôle personnalisé a été modifié depuis la dernière requête. Quand vous envoyez une requête spécifiant une valeur etag à Cloud IAM, le service compare la valeur etag de la requête à la valeur etag existante associée au rôle personnalisé. Il écrit la modification uniquement si les valeurs etag correspondent.
Utilisez la commande gcloud iam roles update
pour mettre à jour les rôles personnalisés de l'une de deux manières possibles :
- Fichier YAML contenant la définition de rôle mise à jour
- Options qui précisent la définition de rôle mise à jour
Lors de la mise à jour d'un rôle personnalisé, vous devez spécifier si celui-ci s'applique au niveau de l'organisation ou au niveau du projet en utilisant l'option --organization [ORGANIZATION_ID]
ou l'option --project [PROJECT_ID]
. Chaque exemple ci-dessous crée un rôle personnalisé au niveau du projet.
La commande describe
affiche la définition du rôle et inclut une valeur etag qui identifie de manière unique la version actuelle du rôle. Vous devez fournir la valeur etag dans la définition de rôle actualisée afin d'éviter que les modifications simultanées du rôle ne soient écrasées.
Mettre à jour un rôle personnalisé à l'aide d'un fichier YAML
- Récupérez la définition actuelle du rôle à l'aide de la commande
gcloud
suivante, en remplaçant[ROLE_ID]
par editor (éditeur).
La commande describe
renvoie le résultat suivant :
-
Copiez ce résultat. Il servira à créer un nouveau fichier YAML au cours des étapes suivantes.
-
Créez un fichier
new-role-definition.yaml
à l'aide de l'éditeur :
- Collez le résultat de la dernière commande et ajoutez ces deux autorisations sous
includedPermissions
:
Votre fichier YAML se présente ainsi lorsque vous avez terminé :
-
Sauvegardez et fermez le fichier en appuyant successivement sur les touches Ctrl+X, Y puis Entrée.
-
Vous allez maintenant mettre à jour le rôle à l'aide de la commande
update
. Exécutez la commandegcloud
suivante, en remplaçant[ROLE_ID]
par editor (éditeur) :
Si le rôle a bien été mis à jour, la réponse suivante s'affiche :
Cliquez sur Vérifier ma progression pour valider l'objectif.
Mettre à jour un rôle personnalisé à l'aide d'options
Chaque partie d'une définition de rôle peut être modifiée à l'aide d'une option correspondante. Pour accéder à la liste de toutes les options disponibles dans la documentation de référence du SDK, reportez-vous à la rubrique gcloud iam roles update.
Utilisez les options suivantes pour ajouter ou supprimer des autorisations :
-
--add-permissions
: ajoute au rôle une ou plusieurs autorisations (valeurs séparées par une virgule). -
--remove-permissions
: supprime du rôle une ou plusieurs autorisations (valeurs séparées par une virgule).
Il est également possible de spécifier les nouvelles autorisations à l'aide de l'option --permissions [PERMISSIONS]
et en fournissant une liste d'autorisations séparées par une virgule pour remplacer la liste des autorisations existantes.
- Exécutez la commande
gcloud
suivante pour ajouter des autorisations au rôle viewer (lecteur) à l'aide d'options :
Si le rôle a bien été mis à jour, la réponse suivante s'affiche :
Cliquez sur Vérifier ma progression pour valider l'objectif.
Tâche 7 : Désactiver un rôle personnalisé
Lorsqu'un rôle est désactivé, toutes les liaisons de stratégie associées à ce rôle sont également désactivées, ce qui implique que les autorisations du rôle ne seront pas accordées, même si vous accordez le rôle à un utilisateur.
Pour désactiver un rôle personnalisé existant, le plus simple est de définir l'option --stage
sur DISABLED.
- Exécutez la commande
gcloud
suivante pour désactiver le rôle viewer (lecteur) :
Si le rôle a bien été mis à jour, la réponse suivante s'affiche :
Cliquez sur Vérifier ma progression pour valider l'objectif.
Tâche 8 : Supprimer un rôle personnalisé
- Vous pouvez supprimer un rôle personnalisé à l'aide de la commande
gcloud iam roles delete
. Le rôle supprimé devient alors inactif et ne peut pas être utilisé pour créer d'autres liaisons de stratégie IAM :
Exemple de résultat :
Une fois le rôle supprimé, les liaisons existantes demeurent, mais elles sont inactives. Le rôle peut être restauré dans les sept jours suivant sa suppression. Après ce délai, le rôle est soumis à un processus de suppression permanente de 30 jours. Au-delà de 37 jours, l'ID du rôle est de nouveau disponible.
Tâche 9 : Restaurer un rôle personnalisé
- Vous pouvez restaurer un rôle dans les 7 jours suivant sa suppression. Les rôles supprimés sont à l'état DISABLED. Pour rendre un rôle à nouveau disponible, mettez à jour l'option
--stage
:
Cliquez sur Vérifier ma progression pour valider l'objectif.
Félicitations !
Dans cet atelier, vous avez créé et géré des rôles personnalisés dans IAM.
Étapes suivantes et informations supplémentaires
Pour en savoir plus sur IAM, consultez l'article dédié, Cloud Identity and Access Management.
Formations et certifications Google Cloud
Les formations et certifications Google Cloud vous aident à tirer pleinement parti des technologies Google Cloud. Nos cours portent sur les compétences techniques et les bonnes pratiques à suivre pour être rapidement opérationnel et poursuivre votre apprentissage. Nous proposons des formations pour tous les niveaux, à la demande, en salle et à distance, pour nous adapter aux emplois du temps de chacun. Les certifications vous permettent de valider et de démontrer vos compétences et votre expérience en matière de technologies Google Cloud.
Dernière mise à jour du manuel : 15 avril 2024
Dernier test de l'atelier : 13 juillet 2023
Copyright 2024 Google LLC Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.