En tant que professionnel du cloud, vous connaissez peut-être déjà l'architecture de la gestion des identités et des accès (IAM) Azure et avez de l'expérience dans l'application de certaines des bonnes pratiques associées. En termes d'IAM, voici certaines des préoccupations d'ordre général :
- Quels sont les meilleurs moyens de gérer les accès aux ressources ?
- Comment accorder aux utilisateurs uniquement l'accès aux ressources dont ils ont réellement besoin ?
Dans Azure, votre entreprise utilise une combinaison d'IAM, d'Azure Active Directory (Azure AD), d'utilisateurs et de rôles avec des règles associées pour contrôler les accès aux différents comptes Azure.
Azure AD est un service mutualisé de gestion des identités et d'annuaire dans le cloud qui permet de gérer les ressources Azure et d'en contrôler les accès.

Vous allez maintenant découvrir comment implémenter le contrôle IAM dans Google Cloud.
Présentation
Dans cet atelier, vous allez découvrir comment utiliser le rôle utilisateur d'un compte de service et comment attribuer des rôles.
Objectifs
Dans cet atelier, vous allez apprendre à effectuer les tâches suivantes :
- Utiliser IAM pour implémenter le contrôle des accès
- Restreindre l'accès à certaines fonctionnalités ou ressources
- Utiliser le rôle Utilisateur d'un compte de service
Mettre en place l'atelier
Pour chaque atelier, nous vous attribuons un nouveau projet Google Cloud et un nouvel ensemble de ressources pour une durée déterminée, sans frais.
-
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 sans frais.
Après quelques instants, la console Cloud s'ouvre dans cet onglet.
Remarque : Pour afficher un menu contenant la liste des produits et services Google Cloud, cliquez sur le menu de navigation en haut à gauche, ou saisissez le nom du service ou du produit dans le champ Recherche.
Tâche 1 : Configuration pour deux utilisateurs
Se connecter à la console Cloud en tant que premier utilisateur
- Cet atelier vous fournit deux noms d'utilisateur, disponibles dans la boîte de dialogue Détails de connexion. Ouvrez une fenêtre de navigation privée pour vous connecter à la console Cloud comme vous le faites d'habitude, et utilisez le compte Username 1 fourni dans Qwiklabs. Notez que les deux noms d'utilisateur utilisent le même mot de passe.
Se connecter à la console Cloud en tant que deuxième utilisateur
- Ouvrez un nouvel onglet dans la fenêtre de navigation privée.
- Accédez à console.cloud.google.com.
- Cliquez sur l'icône d'utilisateur située en haut à droite de l'écran, puis sur Ajouter un compte.
- Connectez-vous à la console Cloud avec le compte Username 2 fourni dans Qwiklabs.
Remarque : À certaines étapes de cet atelier, si vous vous déconnectez du compte Username 1, Qwiklabs supprime le compte Username 2. Restez donc connecté au compte Username 1 jusqu'à ce que vous ayez terminé les tâches associées à Username 2.
Tâche 2 : Découvrir la console IAM
Assurez-vous que vous vous trouvez bien dans l'onglet Username 1 de la console Cloud.
Accéder à la console IAM et parcourir les rôles
- Dans le menu de navigation (
), cliquez sur IAM et administration > IAM.
- Cliquez sur Accorder l'accès et parcourez les rôles dans le menu déroulant.
Le menu Rôles vous permet de découvrir les rôles associés à chaque ressource.
- Cliquez sur ANNULER.
- Passez à l'onglet Username 2 dans la console Cloud.
- Dans le menu de navigation (
), cliquez sur IAM et administration > IAM. Recherchez les lignes contenant les noms associés à Username 1 et Username 2 dans la boîte de dialogue Qwiklabs Détails de connexion.
Remarque : Username 2 dispose actuellement d'un accès au projet, mais le rôle de propriétaire du projet ne lui a pas été attribué. Il ne peut donc modifier aucun des rôles. Pour vérifier ce point, passez la souris sur l'icône en forme de crayon correspondant à Username 2.
- Revenez à l'onglet Username 1 de la console Cloud.
- Dans la console IAM du compte Username 2, cliquez sur l'icône en forme de crayon. Username 2 dispose actuellement du rôle Lecteur. Ne modifiez pas ce rôle.
- Cliquez sur ANNULER.
Tâche 3 : Préparer une ressource pour tester l'accès
Créer un bucket et importer un fichier exemple
-
Si vous n'y êtes pas déjà, passez à l'onglet Username 1 de la console Cloud.
-
Dans le menu de navigation (
), cliquez sur Cloud Storage > Buckets.
-
Cliquez sur Créer un bucket.
-
Spécifiez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :
Propriété |
Valeur (saisissez la valeur ou sélectionnez l'option spécifiée) |
Nom |
Saisissez un nom unique |
Type d'emplacement |
Multirégional |
Remarque : Notez le nom du bucket, car vous en aurez besoin. Dans la suite de cet atelier, ce bucket sera désigné sous le nom [NOM_DU_BUCKET].
- Cliquez sur CRÉER.
Remarque : Si le message L'accès public sera bloqué s'affiche et que l'option Appliquer la protection contre l'accès public sur ce bucket est activée, cliquez sur Confirmer.
- Cliquez sur IMPORTER DES FICHIERS.
- Importez n'importe quel exemple de fichier depuis votre ordinateur local.
- Après l'importation, cliquez sur les trois points au bout de la ligne qui contient le fichier, puis sur Renommer.
- Renommez le fichier sample.txt, puis cliquez sur RENOMMER.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Créer un bucket et importer un exemple de fichier
Vérifier l'accès d'un lecteur de projet
-
Passez à l'onglet Username 2 dans la console Cloud.
-
Dans la console, accédez au menu de navigation, puis cliquez sur Cloud Storage > Buckets.
-
Vérifiez que Username 2 peut voir le bucket.
Tâche 4 : Supprimer l'accès au projet
Supprimer le rôle de lecteur de projet pour le compte Username 2
- Passez à l'onglet Username 1 de la console Cloud.
- Dans le menu de navigation (
), cliquez sur IAM et administration > IAM.
- Sélectionnez Username 2 et cliquez sur Supprimer l'accès.
Remarque : Vérifiez que vous supprimez bien l'accès du compte Username 2 et non celui de Username 1, sans quoi vous devrez recommencer cet atelier.
- Confirmez en cliquant sur le bouton CONFIRMER.
Vous pouvez remarquer que l'utilisateur a disparu de la liste. Il n'a donc plus accès au projet.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Supprimer l'accès au projet
Vérifier que l'accès de Username 2 a été supprimé
-
Passez à l'onglet Username 2 dans la console Cloud.
-
Dans le menu de navigation (
), cliquez sur Présentation du cloud > Tableau de bord.
-
Dans le menu de navigation (
), cliquez sur Cloud Storage > Buckets.
Un message d'erreur s'affiche. Si ce n'est pas le cas, veuillez actualiser la page. Username 2 dispose toujours d'un compte Google Cloud, mais n'a plus accès au projet.
Tâche 5 : Ajouter un accès à l'espace de stockage
Ajouter des autorisations de stockage
- Copiez la valeur de Username 2 à partir de la boîte de dialogue Détails de connexion de Qwiklabs.
- Passez à l'onglet Username 1 de la console Cloud.
- Dans le menu de navigation (
), cliquez sur IAM et administration > IAM.
- Cliquez sur Accorder l'accès pour ajouter un utilisateur.
- Dans le champ Nouveaux comptes principaux, collez la valeur Username 2 que vous avez copiée depuis la boîte de dialogue Détails de connexion de Qwiklabs.
- Dans le champ Sélectionnez un rôle, cliquez sur Cloud Storage > Lecteur d'objets Storage.
- Cliquez sur ENREGISTRER.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Ajouter des autorisations de stockage
Vérifier que Username 2 dispose d'un accès au stockage
- Passez à l'onglet Username 2 dans la console Cloud.
Remarque : Username 2 ne dispose pas du rôle de lecteur de projet. Il n'a donc pas accès au projet ni aux ressources associées dans la console. Il dispose toutefois d'un accès spécifique à Cloud Storage.
- Pour démarrer Cloud Shell, cliquez sur Activer Cloud Shell (
). Cliquez sur Continuer si vous y êtes invité.
- Pour afficher le contenu du bucket créé plus tôt, exécutez la commande suivante en remplaçant
[NOM_DU_BUCKET]
par le nom unique de votre bucket Cloud Storage :
gcloud storage ls gs://[NOM_DU_BUCKET]
Comme vous pouvez le constater, Username 2 dispose d'un accès limité à Cloud Storage.
- Fermez l'onglet Username 2 de la console Cloud.
La suite de l'atelier est à effectuer dans l'onglet Username 1.
- Passez à l'onglet Username 1 de la console Cloud.
Tâche 6 : Configurer l'utilisateur du compte de service
Dans cette partie de l'atelier, vous allez attribuer des autorisations limitées à des comptes de service et apprendre à utiliser le rôle d'utilisateur de compte de service.
Créer un compte de service
- Dans le menu de navigation (
), cliquez sur IAM et administration > Comptes de service.
- Cliquez sur + CRÉER UN COMPTE DE SERVICE.
- Dans le champ Nom de compte de service, indiquez le nom read-bucket-objects.
- Cliquez sur CRÉER ET CONTINUER.
- Dans le champ Sélectionnez un rôle, cliquez sur Cloud Storage > Lecteur d'objets Storage.
- Cliquez sur CONTINUER.
- Cliquez sur OK.
Ajouter l'utilisateur au compte de service
- Sélectionnez le compte de service read-bucket-objects.
- Cliquez sur les trois points à droite du nom du compte de service. Cliquez ensuite sur Gérer les autorisations.
Remarque : Vous allez attribuer le rôle d'utilisateur de compte de service à l'utilisateur, ce qui lui permettra d'utiliser ce type de compte sur une VM s'il y a accès. Ce rôle peut être accordé à un utilisateur, un groupe ou un domaine spécifique. Dans cet atelier, vous allez accorder le rôle Utilisateur de compte de service à tous les employés d'une entreprise appelée Altostrat.com, une société fictive utilisée à titre d'exemple.
- Cliquez sur le bouton ACCORDER L'ACCÈS. Spécifiez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :
Propriété |
Valeur (saisissez la valeur ou sélectionnez l'option spécifiée) |
Nouveaux comptes principaux |
altostrat.com |
Rôle |
Service Accounts > Utilisateur du compte de service |
- Cliquez sur ENREGISTRER.
Accorder l'accès à Compute Engine
Vous allez maintenant attribuer le rôle d'administrateur Compute Engine à l'ensemble de l'organisation Altostrat.
- Dans le menu de navigation (
), cliquez sur IAM et administration > IAM.
- Cliquez sur Accorder l'accès.
- Spécifiez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :
Propriété |
Valeur (saisissez la valeur ou sélectionnez l'option spécifiée) |
Nouveaux comptes principaux |
altostrat.com |
Sélectionnez un rôle |
Compute Engine > Administrateur d'instances Compute (v1) |
- Cliquez sur ENREGISTRER.
Remarque : Cette étape présente la procédure à effectuer pour attribuer un rôle à un utilisateur spécifique.
Cette opération accorde à l'utilisateur un accès limité à une instance de VM. L'utilisateur pourra se connecter à la VM via SSH et effectuer certaines tâches d'administration.
Créer une VM avec l'utilisateur du compte de service
- Dans le menu de navigation (
), cliquez sur Compute Engine > Instances de VM.
- Cliquez sur CRÉER UNE INSTANCE.
- Spécifiez les paramètres suivants et conservez les valeurs par défaut des autres paramètres :
Propriété |
Valeur (saisissez la valeur ou sélectionnez l'option spécifiée) |
Nom |
demoiam |
Région |
|
Zone |
|
Série |
E2 |
Type de machine |
e2-micro (2 processeurs virtuels, 1 Go de mémoire) |
Disque de démarrage |
Debian GNU/Linux 11 (bullseye) |
Compte de service |
read-bucket-objects |
Niveaux d'accès |
Définir l'accès pour chaque API |
Stockage |
Lecture/Écriture |
- Cliquez sur Créer.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Configurer l'utilisateur du compte de service et créer une VM
Tâche 7 : Découvrir le rôle Utilisateur du compte de service
À ce stade, vous pouvez tester l'accès de l'utilisateur en vous connectant via SSH à la VM et en effectuant les actions ci-après. En tant que propriétaire du projet, vous disposez déjà du rôle d'utilisateur du compte de service. Vous pouvez donc simplement utiliser le protocole SSH pour accéder à la VM depuis la console Cloud pour connaître l'expérience de l'utilisateur.
Les actions que vous effectuez et les résultats obtenus sont les mêmes que si vous étiez l'utilisateur cible.
Utiliser le rôle d'utilisateur du compte de service
- Dans demoiam, cliquez sur SSH pour lancer un terminal et vous y connecter.
- Exécutez la commande suivante :
gcloud compute instances list
Résultat (exemple de sortie) :
ERROR: (gcloud.compute.instances.list) Some requests did not succeed:
- Required 'compute.zones.list' permission for 'projects/qwiklabs-gcp'
Que s'est-il passé ? Pourquoi ?
- Copiez le fichier sample.txt à partir du bucket que vous avez créé précédemment. Notez que le point final fait partie de la commande ci-dessous. Il indique que la copie doit être effectuée vers "cet emplacement" :
gcloud storage cp gs://[NOM_DU_BUCKET]/sample.txt .
Résultat (exemple de sortie) :
Copying gs://train-test-iam/sample.txt...
/ [1 files][ 28.0 B/ 28.0 B]
Operation completed over 1 objects/28.0 B.
- Pour renommer le fichier que vous avez copié, exécutez la commande suivante :
mv sample.txt sample2.txt
- Pour copier le fichier renommé dans le bucket, exécutez la commande suivante :
gcloud storage cp sample2.txt gs://[NOM_DU_BUCKET]
Résultat (exemple de sortie) :
AccessDeniedException: 403 Caller does not have storage.objects.create access to bucket train-test-iam.
Remarque : Que s'est-il passé ?
Comme vous vous êtes connecté à l'instance via SSH, vous avez pu agir en tant que compte de service, en disposant globalement des mêmes autorisations.
Le compte de service avec lequel l'instance a été démarrée disposait du rôle de lecteur d'objets Storage, ce qui vous a permis de télécharger les objets des buckets GCS du projet.
L'autorisation compute.instance.list est nécessaire pour répertorier les instances d'un projet. Comme le compte de service ne disposait pas de cette autorisation, vous n'avez pas pu obtenir la liste des instances en cours d'exécution.
Vous avez pu télécharger un objet du bucket, car le compte de service possédait bien l'autorisation requise. Mais comme il ne disposait d'aucune autorisation en écriture sur les objets, vous avez reçu un message d'erreur 403 access denied (accès refusé).
- Dans le menu de navigation (
), cliquez sur IAM et administration > IAM.
- Parcourez les listes contenant les objets read-bucket-objects, puis cliquez sur l'icône en forme de crayon. read-bucket-objects est actuellement doté du rôle Lecteur d'objets Storage. Modifiez le rôle en sélectionnant Cloud Storage > Créateur d'objets Storage.
- Cliquez sur Enregistrer.
- Revenez à la fenêtre SSH pour demoiam.
- Pour copier le fichier renommé dans le bucket, exécutez la commande suivante :
gcloud storage cp sample2.txt gs://[NOM_DU_BUCKET]
Cette fois, la commande aboutit, car le compte de service dispose des autorisations appropriées.
Tâche 8 : Récapitulatif
Dans cet atelier, vous avez appris à attribuer et à révoquer des rôles IAM, tout d'abord pour un utilisateur nommé Username 2, puis pour un utilisateur de compte de service. Vous avez pu attribuer des identifiants d'utilisateur de compte de service et les "intégrer" à une VM pour créer des hôtes bastion autorisés destinés à un usage spécifique.
Résumé
Dans Azure et Google Cloud, IAM est un service Web qui peut vous aider à contrôler de manière sécurisée les accès à différents services et ressources. Vous pouvez utiliser cet outil pour gérer l'authentification (Qui a accès ?) et l'autorisation (Que cette personne peut-elle faire ?).
Vous pouvez également créer et gérer différents comptes principaux, par exemple :
- Utilisateurs
- Rôles
- Règles
Google Cloud IAM et Azure AD présentent de nombreuses similitudes dans leur fonctionnement. Les deux systèmes offrent un large éventail de fonctionnalités, telles que le contrôle des accès basé sur les rôles, l'authentification multifacteur et la gestion des utilisateurs, qui aident à sécuriser votre infrastructure cloud. Vous avez la possibilité de déléguer des tâches administratives et de contrôler les accès aux ressources avec des règles précises dans les deux systèmes.
Il existe néanmoins des différences. Google Cloud IAM exploite une interface utilisateur simple et intuitive. Azure AD utilise des fonctionnalités telles que l'accès conditionnel et l'authentification unique intégrée avec d'autres applications.
Terminer l'atelier
Une fois l'atelier terminé, cliquez sur Terminer l'atelier. Google Cloud Skills Boost supprime les ressources que vous avez utilisées, puis efface le compte.
Si vous le souhaitez, vous pouvez noter l'atelier. Sélectionnez un nombre d'étoiles, saisissez un commentaire, puis cliquez sur Envoyer.
Le nombre d'étoiles correspond à votre degré de satisfaction :
- 1 étoile = très insatisfait(e)
- 2 étoiles = insatisfait(e)
- 3 étoiles = ni insatisfait(e), ni satisfait(e)
- 4 étoiles = satisfait(e)
- 5 étoiles = très satisfait(e)
Si vous ne souhaitez pas donner votre avis, vous pouvez fermer la boîte de dialogue.
Pour soumettre des commentaires, suggestions ou corrections, veuillez accéder à l'onglet Assistance.
Copyright 2020 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.