Lorsque vous ajoutez un nouveau membre à votre projet, vous pouvez utiliser une stratégie de gestion de l'authentification et des accès (IAM, Identity and Access Management) pour attribuer à ce membre un ou plusieurs rôles IAM. Chaque rôle IAM contient des autorisations qui accordent au membre l'accès à des ressources spécifiques.
Compute Engine dispose d'un ensemble de rôles IAM prédéfinis décrits sur cette page. Vous pouvez également créer des rôles personnalisés contenant des sous-ensembles d'autorisations qui correspondent exactement à vos besoins.
Pour connaître les autorisations requises pour chaque méthode, consultez la documentation de référence de l'API Compute Engine :
- Documentation de référence de l'API v1 Compute Engine
- Documentation de référence de l'API bêta Compute Engine
Pour en savoir plus sur les autorisations d'accès, consultez les pages suivantes.
- Pour définir des stratégies IAM au niveau d'un projet, consultez la page Accorder, modifier et révoquer les accès à des ressources dans la documentation IAM.
- Pour apprendre à définir des stratégies sur des ressources Compute Engine spécifiques, consultez la page Gérer l'accès aux ressources Compute Engine.
- Pour savoir comment attribuer des rôles à un compte de service Compute Engine, consultez la page Créer et activer des comptes de service pour les instances.
Avant de commencer
- Lisez la documentation IAM.
Qu'est-ce qu'IAM ?
Google Cloud propose IAM, qui vous permet d'attribuer un accès précis à des ressources spécifiques de Google Cloud et empêche tout accès non souhaité à 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.
En définissant des stratégies IAM, vous pouvez contrôler qui (identité) dispose de quelles autorisations d'accès (rôles) à quelles ressources. Ces stratégies permettent d'attribuer un ou plusieurs rôles spécifiques à un membre du projet, et ainsi d'accorder à cette identité certaines autorisations. Par exemple, pour une ressource donnée, vous pouvez attribuer le rôle roles/compute.networkAdmin
à un compte Google. Celui-ci peut contrôler les ressources réseau du projet, mais pas les autres ressources, comme les instances et les disques. Vous pouvez également utiliser IAM pour gérer les anciens rôles Cloud Console accordés aux membres de l'équipe de projet.
Rôle serviceAccountUser
Lorsqu'il est associé à roles/compute.instanceAdmin.v1
, le rôle roles/iam.serviceAccountUser
permet aux membres de créer et de gérer des instances qui utilisent un compte de service. Plus précisément, l'attribution de roles/iam.serviceAccountUser
et de roles/compute.instanceAdmin.v1
permet aux membres de :
- créer une instance qui s'exécute en tant que compte de service ;
- associer un disque persistant à une instance qui s'exécute en tant que compte de service ;
- définir des métadonnées sur une instance qui s'exécute en tant que compte de service ;
- se connecter via SSH à une instance qui s'exécute en tant que compte de service ;
- reconfigurer une instance à exécuter en tant que compte de service.
Vous pouvez accorder roles/iam.serviceAccountUser
de deux façons différentes :
Recommandation. Accordez le rôle à un membre sur un compte de service spécifique. Cela permet à un membre d'accéder au compte de service
iam.serviceAccountUser
, mais empêche l'accès à d'autres comptes de service pour lesquels le membre n'est pas uniam.serviceAccountUser
.Accordez le rôle à un membre au niveau du projet. Le membre a accès à tous les comptes de service du projet, y compris à ceux créés par la suite.
Si ce concept ne vous est pas familier, apprenez-en plus sur les comptes de service.
Autorisation d'accès à Google Cloud Console
Pour utiliser Google Cloud Console afin d'accéder aux ressources Compute Engine, vous devez disposer d'un rôle comportant l'autorisation suivante sur le projet :
compute.projects.get
Se connecter à une instance en tant qu'instanceAdmin
Une fois que vous avez accordé le rôle roles/compute.instanceAdmin.v1
à un membre du projet, celui-ci peut se connecter à des instances de machine virtuelle (VM) à l'aide des outils Google Cloud standards, tels que l'outil gcloud
ou SSH depuis le navigateur.
Lorsqu'un membre utilise l'outil gcloud
ou SSH depuis le navigateur, les outils génèrent automatiquement une paire de clés publique/privée et ajoutent la clé publique aux métadonnées du projet. Si le membre ne dispose pas des autorisations nécessaires pour modifier les métadonnées du projet, l'outil ajoute la clé publique du membre aux métadonnées de l'instance.
Si le membre souhaite utiliser une paire de clés existante, il peut ajouter manuellement sa clé publique aux métadonnées de l'instance. En savoir plus sur l'ajout ou la suppression de clés SSH à partir d'une instance.
IAM avec des comptes de service
Créez des comptes de service personnalisés, puis accordez-leur des rôles IAM pour limiter l'accès de vos instances. Utilisez les rôles IAM avec des comptes de service personnalisés pour :
- limiter l'accès de vos instances aux API Google Cloud à l'aide de rôles IAM précis ;
- attribuer à chaque instance ou ensemble d'instances une identité unique ;
- limiter l'accès à votre compte de service par défaut.
En savoir plus sur les comptes de service
Groupes d'instances gérés et IAM
Les groupes d'instances gérés, en particulier lorsqu'ils sont configurés pour l'autoscaling, sont des ressources qui effectuent des actions au nom de l'utilisateur sans qu'il n'ait à intervenir directement. Les groupes d'instances gérés créent, suppriment et gèrent des instances dans le groupe d'instances à l'aide d'une identité de compte de service. Pour plus d'informations, lisez la documentation sur les groupes d'instances gérés et IAM.
Opérations non acceptées
Vous ne pouvez pas accorder d'accès pour effectuer des mises à jour progressives sur des groupes d'instances à l'aide des rôles IAM.
Pour autoriser un utilisateur à effectuer ces opérations, servez-vous des rôles de propriétaire, de collaborateur ou de lecteur qui sont plus généraux.
Rôles IAM prédéfinis Compute Engine
Avec IAM, chaque méthode d'API Compute Engine nécessite que l'identité effectuant la requête API dispose des autorisations appropriées pour utiliser la ressource. Pour accorder des autorisations, vous devez définir des stratégies qui attribuent des rôles à un membre (utilisateur, groupe ou compte de service) du projet.
En plus des rôles de base (lecteur, éditeur et propriétaire) et des rôles personnalisés, vous pouvez attribuer les rôles prédéfinis Compute Engine suivants aux membres du projet.
Vous avez la possibilité d'accorder plusieurs rôles à un membre du projet sur la même ressource. Par exemple, si votre équipe réseau gère également les règles de pare-feu, vous pouvez attribuer les rôles roles/compute.networkAdmin
et roles/compute.securityAdmin
au groupe Google de l'équipe réseau.
Les tableaux suivants décrivent les rôles IAM prédéfinis Compute Engine, ainsi que les autorisations qu'ils contiennent. Chaque rôle comporte un ensemble d'autorisations adaptées à une tâche spécifique. Par exemple, les rôles d'administrateur d'instances accordent des autorisations permettant de gérer les instances, les rôles réseau contiennent des autorisations permettant de gérer les ressources liées au réseau et les rôles de sécurité attribuent des autorisations permettant de gérer les ressources liées à la sécurité, telles que les pare-feu et les certificats SSL.
Rôle d'administrateur de Compute
Nom | Description | Autorisations |
---|---|---|
roles/
|
Contrôle complet des ressources Compute Engine. Si l'utilisateur est amené à gérer des instances de machines virtuelles configurées pour s'exécuter en tant que compte de service, vous devez également lui accorder le rôle |
|
Rôle d'utilisateur d'images Compute
Nom | Description | Autorisations |
---|---|---|
roles/
|
Permet de répertorier et de lire des images sans disposer d'autres autorisations sur celles-ci. L'attribution de ce rôle au niveau du projet permet aux utilisateurs de répertorier toutes les images du projet et de créer des ressources, telles que des instances et des disques persistants, à partir des images du projet. |
|
Rôle d'administrateur d'instances Compute (version bêta)
Nom | Description | Autorisations |
---|---|---|
roles/
|
Autorisations permettant de créer, modifier et supprimer des instances de machine virtuelle. Cela inclut les autorisations nécessaires pour créer, modifier et supprimer des disques, ainsi que pour configurer les paramètres de VM protégéeBÊTA. Si l'utilisateur est amené à gérer des instances de machines virtuelles configurées pour s'exécuter en tant que compte de service, vous devez également lui accorder le rôle Par exemple, si une personne au sein de votre entreprise gère des groupes d'instances de machines virtuelles, mais ne gère pas les paramètres réseau ou de sécurité, ni les instances qui s'exécutent en tant que comptes de service, vous pouvez accorder ce rôle sur l'organisation, le dossier ou le projet contenant les instances, ou vous pouvez l'accorder sur des instances individuelles. |
|
Rôle d'administrateur d'instances Compute (v1)
Nom | Description | Autorisations |
---|---|---|
roles/
|
Offre un contrôle complet des instances, groupes d'instances, disques, instantanés et images Compute Engine. Fournit un accès en lecture à toutes les ressources réseau Compute Engine. Si vous n'attribuez ce rôle à un utilisateur qu'au niveau d'une instance, cette personne ne peut pas créer d'instances. |
|
Rôle d'administrateur de l'équilibreur de charge Compute
Nom | Description | Autorisations |
---|---|---|
roles/ Bêta |
Permet de créer, de modifier et de supprimer des équilibreurs de charge, et d'associer des ressources. Par exemple, si votre entreprise dispose d'une équipe chargée de gérer les équilibreurs de charge, les certificats SSL associés, les règles SSL et d'autres ressources d'équilibrage de charge, ainsi que d'une équipe réseau distincte qui gère le reste des ressources réseau, attribuez ce rôle au groupe de l'équipe chargée de l'équilibrage de charge. |
|
Rôle d'administrateur réseau Compute
Nom | Description | Autorisations |
---|---|---|
roles/
|
Ce rôle permet de créer, modifier et supprimer des ressources réseau, à l'exception des règles de pare-feu et des certificats SSL. Le rôle d'administrateur réseau offre un accès en lecture seule aux règles de pare-feu, aux certificats SSL et aux instances (pour afficher leurs adresses IP éphémères). Il ne permet pas aux utilisateurs de créer, de démarrer, d'arrêter ou de supprimer des instances. Par exemple, si votre entreprise dispose d'une équipe de sécurité qui gère les pare-feu et les certificats SSL, ainsi que d'une équipe réseau qui gère le reste des ressources réseau, attribuez ce rôle au groupe de l'équipe réseau. |
|
Rôle d'utilisateur de réseau de Compute
Nom | Description | Autorisations |
---|---|---|
roles/
|
Fournit l'accès à un réseau VPC partagé Une fois ce rôle accordé, les propriétaires de service peuvent utiliser les réseaux et sous-réseaux VPC appartenant au projet hôte. Par exemple, un utilisateur du réseau peut créer une instance de VM appartenant à un réseau du projet hôte. Toutefois, il ne peut ni supprimer, ni créer des réseaux dans le projet hôte. |
|
Rôle de lecteur de réseau de Compute
Nom | Description | Autorisations |
---|---|---|
roles/
|
Accès en lecture seule à toutes les ressources réseau. Par exemple, si vous disposez d'un logiciel qui inspecte la configuration de votre réseau, vous pouvez attribuer ce rôle au compte de service de ce logiciel. |
|
Rôle d'administrateur des stratégies de pare-feu de l'organisation Compute
Nom | Description | Autorisations |
---|---|---|
roles/
|
Contrôle complet des règles de pare-feu de l'organisation Compute Engine. |
|
Rôle d'utilisateur des stratégies de pare-feu de l'organisation Compute
Nom | Description | Autorisations |
---|---|---|
roles/
|
Afficher ou utiliser des règles de pare-feu Compute Engine à associer à l'organisation ou aux dossiers. |
|
Rôle d'administrateur des règles de sécurité de l'organisation Compute
Nom | Description | Autorisations |
---|---|---|
roles/
|
Contrôle complet des règles de sécurité Compute Engine de l'organisation. |
|
Règle d'utilisateur des règles de sécurité de l'organisation Compute
Nom | Description | Autorisations |
---|---|---|
roles/
|
Affichez ou utilisez des règles de sécurité Compute Engine à associer à l'organisation ou aux dossiers. |
|
Rôle d'administrateur des ressources de l'organisation Compute
Nom | Description | Autorisations |
---|---|---|
roles/
|
Contrôle complet des associations des règles de pare-feu Compute Engine à l'organisation ou aux dossiers. |
|
Rôle de connexion administrateur au système d'exploitation Compute
Nom | Description | Autorisations |
---|---|---|
roles/
|
Permet de se connecter à une instance Compute Engine en tant qu'administrateur. |
|
Rôle de connexion au système d'exploitation Compute
Nom | Description | Autorisations |
---|---|---|
roles/
|
Permet de se connecter à une instance Compute Engine en tant qu'utilisateur standard. |
|
Rôle de connexion au système d'exploitation Compute en tant qu'utilisateur externe
Nom | Description | Autorisations |
---|---|---|
roles/
|
Disponible uniquement au niveau de l'organisation. Permet à un utilisateur externe de définir les informations de connexion au système d'exploitation associées à cette organisation. Ce rôle n'accorde pas l'accès aux instances. Les utilisateurs externes doivent avoir l'un des rôles requis pour la connexion au système d'exploitation afin de pouvoir accéder aux instances via SSH. |
|
Rôle d'administrateur de la mise en miroir de paquets Compute
Nom | Description | Autorisations |
---|---|---|
roles/
|
Spécifier les ressources à mettre en miroir. |
|
Rôle utilisateur de la mise en miroir de paquets Compute
Nom | Description | Autorisations |
---|---|---|
roles/
|
Utiliser les mises en miroir de paquets Compute Engine. |
|
Rôle d'administrateur d'adresses IP publiques Compute
Nom | Description | Autorisations |
---|---|---|
roles/ Bêta |
Contrôle complet de la gestion des adresses IP publiques pour Compute Engine. |
|
Rôle d'administrateur de sécurité de Compute
Nom | Description | Autorisations |
---|---|---|
roles/
|
Permet de créer, de modifier et de supprimer des règles de pare-feu et des certificats SSL, ainsi que de configurer les paramètres de VM protégéeBÊTA. Par exemple, si votre entreprise dispose d'une équipe de sécurité qui gère les pare-feu et les certificats SSL, ainsi que d'une équipe réseau qui gère le reste des ressources réseau, attribuez ce rôle au groupe de l'équipe de sécurité. |
|
Rôle d'administrateur Compute Storage
Nom | Description | Autorisations |
---|---|---|
roles/
|
Permet de créer, de modifier et de supprimer des disques, des images et des instantanés. Par exemple, si une personne au sein de votre entreprise gère les images de projet et que vous ne souhaitez pas qu'elle dispose du rôle d'éditeur pour le projet, vous pouvez attribuer ce rôle à son compte. |
|
Rôle de lecteur de Compute
Nom | Description | Autorisations |
---|---|---|
roles/
|
Ce rôle offre un accès en lecture seule permettant d'obtenir et de répertorier les ressources Compute Engine, mais pas de lire les données stockées sur celles-ci. Par exemple, un compte doté de ce rôle est en mesure de répertorier tous les disques d'un projet, mais ne peut pas lire les données qu'ils contiennent. |
|
Rôle d'administrateur VPC Compute partagé
Nom | Description | Permissions |
---|---|---|
roles/
|
Permet d'administrer les projets hôtes du VPC partagé, en particulier de les activer et d'associer les projets de service VPC partagé au réseau des projets hôtes. Au niveau de l'organisation, ce rôle ne peut être attribué que par un administrateur de l'organisation.
Google Cloud recommande que l'administrateur VPC partagé soit le propriétaire du projet hôte de VPC partagé. L'administrateur VPC partagé est chargé d'attribuer le rôle Utilisateur de réseau Compute ( |
|
Rôle d'administrateur GuestPolicy
Nom | Description | Autorisations |
---|---|---|
roles/ Bêta |
Accès administrateur complet aux GuestPolicies |
|
Rôle d'éditeur GuestPolicy
Nom | Description | Autorisations |
---|---|---|
roles/ Bêta |
Éditeur de ressources GuestPolicy |
|
Rôle de lecteur GuestPolicy
Nom | Description | Autorisations |
---|---|---|
roles/ Bêta |
Lecteur de ressources GuestPolicy |
|
Rôle d'administrateur PatchDeployment
Nom | Description | Autorisations |
---|---|---|
roles/
|
Accès administrateur complet aux PatchDeployments |
|
Rôle de lecteur PatchDeployment
Nom | Description | Autorisations |
---|---|---|
roles/
|
Lecteur de ressources PatchDeployment |
|
Rôle d'exécuteur de tâches d'application de correctifs
Nom | Description | Autorisations |
---|---|---|
roles/
|
Accès permettant d'exécuter des tâches d'application de correctifs. |
|
Rôle de lecteur de tâches d'application de correctifs
Nom | Description | Autorisations |
---|---|---|
roles/
|
Accès permettant d'obtenir et de répertorier les tâches d'application de correctifs. |
|
Rôle d'administrateur DNS
Nom | Description | Autorisations |
---|---|---|
roles/
|
Fournit un accès en lecture/écriture à toutes les ressources Cloud DNS. |
|
Rôle d'appairage DNS
Nom | Description | Permissions |
---|---|---|
roles/
|
Accès aux réseaux cibles avec des zones d'appairage DNS |
|
Rôle de lecteur DNS
Nom | Description | Autorisations |
---|---|---|
roles/
|
Fournit un accès en lecture seule à toutes les ressources Cloud DNS. |
|
Rôle Administrateur de compte de service
Nom | Description | Autorisations |
---|---|---|
roles/
|
Créer et gérer des comptes de service. |
|
Rôle permettant de créer des comptes de service
Nom | Description | Autorisations |
---|---|---|
roles/
|
Accès permettant de créer des comptes de service. |
|
Rôle permettant de supprimer des comptes de service
Nom | Description | Autorisations |
---|---|---|
roles/
|
Accès permettant de supprimer des comptes de service. |
|
Rôle d'administrateur de clé de compte de service
Nom | Description | Autorisations |
---|---|---|
roles/
|
Créer et gérer (et faire tourner) les clés du compte de service. |
|
Rôle permettant la création de jetons de compte de service
Nom | Description | Autorisations |
---|---|---|
roles/
|
Emprunter l'identité des comptes de service (créer des jetons d'accès OAuth2, signer des blobs ou JWT, etc.). |
|
Rôle Utilisateur du compte de service
Nom | Description | Autorisations |
---|---|---|
roles/
|
Exécute les opérations en tant que compte de service. |
|
Rôle d'utilisateur Workload Identity
Nom | Description | Autorisations |
---|---|---|
roles/
|
Emprunter l'identité des comptes de service des charges de travail GKE |
|
Étape suivante
- Apprenez-en plus sur IAM.
- Découvrez comment créer et gérer des rôles IAM personnalisés.
- Accordez des rôles IAM aux utilisateurs du projet.
- Accordez des rôles IAM pour des ressources Compute Engine spécifiques.
- Accorder des rôles IAM à des comptes de service.