Rôles IAM Compute Engine

Compute Engine est doté d'un ensemble spécifique de rôles Cloud Identity and Access Management (Cloud IAM). Chaque rôle prédéfini contient un ensemble d'autorisations.

Lorsque vous ajoutez un nouveau membre à votre projet, vous pouvez utiliser une stratégie IAM pour lui attribuer un ou plusieurs rôles IAM. Chaque rôle IAM contient des autorisations qui accordent au membre l'accès à des ressources spécifiques.

Pour savoir comment définir des stratégies 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 les ressources Compute Engine, consultez la page Accorder un accès à des ressources Compute Engine. Pour savoir comment attribuer des rôles à un compte de service Compute Engine, consultez la section Créer et activer des comptes de service pour les instances. Pour apprendre à créer des rôles personnalisés contenant un sous-ensemble d'autorisations, consultez la page Créer et gérer les rôles personnalisés.

Avant de commencer

Qu'est-ce qu'IAM ?

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.

Avec IAM, vous pouvez contrôler qui (identité) dispose de quelles autorisations d'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 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 Cloud IAM pour gérer les anciens rôles Cloud Console accordés aux membres de l'équipe de projet.

Rôles Cloud IAM prédéfinis de Compute Engine

Avec Cloud IAM, chaque méthode API de l'API Compute Engine nécessite que l'identité qui effectue la requête d'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 anciens rôles (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 roles/compute.networkAdmin et roles/compute.securityAdmin au groupe Google de l'équipe réseau.

Les tableaux suivants décrivent les rôles prédéfinis Cloud IAM de Compute Engine, ainsi que les autorisations contenues dans chaque rôle. Chaque rôle comporte un ensemble d'autorisations adaptées à une tâche spécifique. Par exemple, les deux premiers rôles 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/
compute.admin

Contrôle complet de toutes les 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 roles/iam.serviceAccountUser.

  • compute.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Rôle d'utilisateur d'images Compute

Nom Description Autorisations
roles/
compute.imageUser

Permet de répertorier et de lire des images sans disposer d'autres autorisations sur celles-ci. Si vous attribuez le rôle compute.imageUser au niveau du projet, les utilisateurs peuvent répertorier toutes les images qu'il contient et les utiliser ensuite pour créer des ressources telles que des instances et des disques persistants.

  • compute.images.get
  • compute.images.getFromFamily
  • compute.images.list
  • compute.images.useReadOnly
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Rôle d'administrateur d'instances Compute (version bêta)

Nom Description Autorisations
roles/
compute.instanceAdmin

Permet de créer, de modifier et de supprimer des instances de machines virtuelles. 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 roles/iam.serviceAccountUser.

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.

  • compute.acceleratorTypes.*
  • compute.addresses.get
  • compute.addresses.list
  • compute.addresses.use
  • compute.autoscalers.*
  • compute.diskTypes.*
  • compute.disks.create
  • compute.disks.createSnapshot
  • compute.disks.delete
  • compute.disks.get
  • compute.disks.list
  • compute.disks.resize
  • compute.disks.setLabels
  • compute.disks.update
  • compute.disks.use
  • compute.disks.useReadOnly
  • compute.globalAddresses.get
  • compute.globalAddresses.list
  • compute.globalAddresses.use
  • compute.globalOperations.get
  • compute.globalOperations.list
  • compute.images.get
  • compute.images.getFromFamily
  • compute.images.list
  • compute.images.useReadOnly
  • compute.instanceGroupManagers.*
  • compute.instanceGroups.*
  • compute.instanceTemplates.*
  • compute.instances.*
  • compute.licenses.get
  • compute.licenses.list
  • compute.machineTypes.*
  • compute.networkEndpointGroups.*
  • compute.networks.get
  • compute.networks.list
  • compute.networks.use
  • compute.networks.useExternalIp
  • compute.projects.get
  • compute.regionOperations.get
  • compute.regionOperations.list
  • compute.regions.*
  • compute.reservations.get
  • compute.reservations.list
  • compute.subnetworks.get
  • compute.subnetworks.list
  • compute.subnetworks.use
  • compute.subnetworks.useExternalIp
  • compute.targetPools.get
  • compute.targetPools.list
  • compute.zoneOperations.get
  • compute.zoneOperations.list
  • compute.zones.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Rôle d'administrateur d'instances Compute (v1)

Nom Description Autorisations
roles/
compute.instanceAdmin.v1
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.

  • compute.acceleratorTypes.*
  • compute.addresses.get
  • compute.addresses.list
  • compute.addresses.use
  • compute.autoscalers.*
  • compute.backendBuckets.get
  • compute.backendBuckets.list
  • compute.backendServices.get
  • compute.backendServices.list
  • compute.diskTypes.*
  • compute.disks.*
  • compute.externalVpnGateways.get
  • compute.externalVpnGateways.list
  • compute.firewalls.get
  • compute.firewalls.list
  • compute.forwardingRules.get
  • compute.forwardingRules.list
  • compute.globalAddresses.get
  • compute.globalAddresses.list
  • compute.globalAddresses.use
  • compute.globalForwardingRules.get
  • compute.globalForwardingRules.list
  • compute.globalOperations.get
  • compute.globalOperations.list
  • compute.healthChecks.get
  • compute.healthChecks.list
  • compute.httpHealthChecks.get
  • compute.httpHealthChecks.list
  • compute.httpsHealthChecks.get
  • compute.httpsHealthChecks.list
  • compute.images.*
  • compute.instanceGroupManagers.*
  • compute.instanceGroups.*
  • compute.instanceTemplates.*
  • compute.instances.*
  • compute.interconnectAttachments.get
  • compute.interconnectAttachments.list
  • compute.interconnectLocations.*
  • compute.interconnects.get
  • compute.interconnects.list
  • compute.licenseCodes.*
  • compute.licenses.*
  • compute.machineTypes.*
  • compute.networkEndpointGroups.*
  • compute.networks.get
  • compute.networks.list
  • compute.networks.use
  • compute.networks.useExternalIp
  • compute.projects.get
  • compute.projects.setCommonInstanceMetadata
  • compute.regionBackendServices.get
  • compute.regionBackendServices.list
  • compute.regionOperations.get
  • compute.regionOperations.list
  • compute.regions.*
  • compute.reservations.get
  • compute.reservations.list
  • compute.resourcePolicies.*
  • compute.routers.get
  • compute.routers.list
  • compute.routes.get
  • compute.routes.list
  • compute.snapshots.*
  • compute.sslCertificates.get
  • compute.sslCertificates.list
  • compute.sslPolicies.get
  • compute.sslPolicies.list
  • compute.sslPolicies.listAvailableFeatures
  • compute.subnetworks.get
  • compute.subnetworks.list
  • compute.subnetworks.use
  • compute.subnetworks.useExternalIp
  • compute.targetHttpProxies.get
  • compute.targetHttpProxies.list
  • compute.targetHttpsProxies.get
  • compute.targetHttpsProxies.list
  • compute.targetInstances.get
  • compute.targetInstances.list
  • compute.targetPools.get
  • compute.targetPools.list
  • compute.targetSslProxies.get
  • compute.targetSslProxies.list
  • compute.targetTcpProxies.get
  • compute.targetTcpProxies.list
  • compute.targetVpnGateways.get
  • compute.targetVpnGateways.list
  • compute.urlMaps.get
  • compute.urlMaps.list
  • compute.vpnGateways.get
  • compute.vpnGateways.list
  • compute.vpnTunnels.get
  • compute.vpnTunnels.list
  • compute.zoneOperations.get
  • compute.zoneOperations.list
  • compute.zones.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Rôle d'administrateur de l'équilibreur de charge Compute

Nom Description Autorisations
roles/
compute.loadBalancerAdmin
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 d'équilibrage de charge qui gère les équilibreurs de charge et leurs certificats SSL, les stratégies SSL et d'autres ressources d'équilibrage de charge, ainsi que d'une équipe de mise en réseau distincte qui gère le reste des ressources réseau, accordez le rôle loadBalancerAdmin au groupe de l'équipe d'équilibrage de charge.

  • compute.addresses.*
  • compute.backendBuckets.*
  • compute.backendServices.*
  • compute.forwardingRules.*
  • compute.globalAddresses.*
  • compute.globalForwardingRules.*
  • compute.healthChecks.*
  • compute.httpHealthChecks.*
  • compute.httpsHealthChecks.*
  • compute.instanceGroups.*
  • compute.instances.get
  • compute.instances.list
  • compute.instances.use
  • compute.networkEndpointGroups.*
  • compute.networks.get
  • compute.networks.list
  • compute.networks.use
  • compute.projects.get
  • compute.regionBackendServices.*
  • compute.securityPolicies.get
  • compute.securityPolicies.list
  • compute.securityPolicies.use
  • compute.sslCertificates.*
  • compute.sslPolicies.*
  • compute.subnetworks.get
  • compute.subnetworks.list
  • compute.subnetworks.use
  • compute.targetHttpProxies.*
  • compute.targetHttpsProxies.*
  • compute.targetInstances.*
  • compute.targetPools.*
  • compute.targetSslProxies.*
  • compute.targetTcpProxies.*
  • compute.urlMaps.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Rôle d'administrateur réseau Compute

Nom Description Autorisations
roles/
compute.networkAdmin

Permet de créer, de modifier et de 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 de mise en réseau qui gère le reste des ressources réseau, accordez le rôle networkAdmin au groupe de mise en réseau.

  • compute.addresses.*
  • compute.autoscalers.get
  • compute.autoscalers.list
  • compute.backendBuckets.*
  • compute.backendServices.*
  • compute.externalVpnGateways.*
  • compute.firewalls.get
  • compute.firewalls.list
  • compute.forwardingRules.*
  • compute.globalAddresses.*
  • compute.globalForwardingRules.*
  • compute.globalOperations.get
  • compute.globalOperations.list
  • compute.healthChecks.*
  • compute.httpHealthChecks.*
  • compute.httpsHealthChecks.*
  • compute.instanceGroupManagers.get
  • compute.instanceGroupManagers.list
  • compute.instanceGroupManagers.update
  • compute.instanceGroupManagers.use
  • compute.instanceGroups.get
  • compute.instanceGroups.list
  • compute.instanceGroups.update
  • compute.instanceGroups.use
  • compute.instances.get
  • compute.instances.getGuestAttributes
  • compute.instances.getSerialPortOutput
  • compute.instances.list
  • compute.instances.listReferrers
  • compute.instances.use
  • compute.interconnectAttachments.*
  • compute.interconnectLocations.*
  • compute.interconnects.*
  • compute.networkEndpointGroups.get
  • compute.networkEndpointGroups.list
  • compute.networkEndpointGroups.use
  • compute.networks.*
  • compute.projects.get
  • compute.regionBackendServices.*
  • compute.regionOperations.get
  • compute.regionOperations.list
  • compute.regions.*
  • compute.routers.*
  • compute.routes.*
  • compute.securityPolicies.get
  • compute.securityPolicies.list
  • compute.securityPolicies.use
  • compute.sslCertificates.get
  • compute.sslCertificates.list
  • compute.sslPolicies.*
  • compute.subnetworks.*
  • compute.targetHttpProxies.*
  • compute.targetHttpsProxies.*
  • compute.targetInstances.*
  • compute.targetPools.*
  • compute.targetSslProxies.*
  • compute.targetTcpProxies.*
  • compute.targetVpnGateways.*
  • compute.urlMaps.*
  • compute.vpnGateways.*
  • compute.vpnTunnels.*
  • compute.zoneOperations.get
  • compute.zoneOperations.list
  • compute.zones.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • servicenetworking.operations.get
  • servicenetworking.services.addPeering
  • servicenetworking.services.get
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Rôle d'utilisateur de réseau de Compute

Nom Description Autorisations
roles/
compute.networkUser

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.

  • compute.addresses.createInternal
  • compute.addresses.deleteInternal
  • compute.addresses.get
  • compute.addresses.list
  • compute.addresses.useInternal
  • compute.externalVpnGateways.get
  • compute.externalVpnGateways.list
  • compute.externalVpnGateways.use
  • compute.firewalls.get
  • compute.firewalls.list
  • compute.interconnectAttachments.get
  • compute.interconnectAttachments.list
  • compute.interconnectLocations.*
  • compute.interconnects.get
  • compute.interconnects.list
  • compute.interconnects.use
  • compute.networks.get
  • compute.networks.list
  • compute.networks.use
  • compute.networks.useExternalIp
  • compute.projects.get
  • compute.regions.*
  • compute.routers.get
  • compute.routers.list
  • compute.routes.get
  • compute.routes.list
  • compute.subnetworks.get
  • compute.subnetworks.list
  • compute.subnetworks.use
  • compute.subnetworks.useExternalIp
  • compute.targetVpnGateways.get
  • compute.targetVpnGateways.list
  • compute.vpnGateways.get
  • compute.vpnGateways.list
  • compute.vpnGateways.use
  • compute.vpnTunnels.get
  • compute.vpnTunnels.list
  • compute.zones.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • servicenetworking.services.get
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Rôle de lecteur de réseau de Compute

Nom Description Autorisations
roles/
compute.networkViewer

Accès en lecture seule à toutes les ressources réseau.

Par exemple, si vous disposez d'un logiciel qui inspecte votre configuration réseau, vous pouvez accorder le rôle networkViewer au compte de service de ce logiciel.

  • compute.addresses.get
  • compute.addresses.list
  • compute.autoscalers.get
  • compute.autoscalers.list
  • compute.backendBuckets.get
  • compute.backendBuckets.list
  • compute.backendServices.get
  • compute.backendServices.list
  • compute.firewalls.get
  • compute.firewalls.list
  • compute.forwardingRules.get
  • compute.forwardingRules.list
  • compute.globalAddresses.get
  • compute.globalAddresses.list
  • compute.globalForwardingRules.get
  • compute.globalForwardingRules.list
  • compute.healthChecks.get
  • compute.healthChecks.list
  • compute.httpHealthChecks.get
  • compute.httpHealthChecks.list
  • compute.httpsHealthChecks.get
  • compute.httpsHealthChecks.list
  • compute.instanceGroupManagers.get
  • compute.instanceGroupManagers.list
  • compute.instanceGroups.get
  • compute.instanceGroups.list
  • compute.instances.get
  • compute.instances.getGuestAttributes
  • compute.instances.getSerialPortOutput
  • compute.instances.list
  • compute.instances.listReferrers
  • compute.interconnectAttachments.get
  • compute.interconnectAttachments.list
  • compute.interconnectLocations.*
  • compute.interconnects.get
  • compute.interconnects.list
  • compute.networks.get
  • compute.networks.list
  • compute.projects.get
  • compute.regionBackendServices.get
  • compute.regionBackendServices.list
  • compute.regions.*
  • compute.routers.get
  • compute.routers.list
  • compute.routes.get
  • compute.routes.list
  • compute.sslCertificates.get
  • compute.sslCertificates.list
  • compute.sslPolicies.get
  • compute.sslPolicies.list
  • compute.sslPolicies.listAvailableFeatures
  • compute.subnetworks.get
  • compute.subnetworks.list
  • compute.targetHttpProxies.get
  • compute.targetHttpProxies.list
  • compute.targetHttpsProxies.get
  • compute.targetHttpsProxies.list
  • compute.targetInstances.get
  • compute.targetInstances.list
  • compute.targetPools.get
  • compute.targetPools.list
  • compute.targetSslProxies.get
  • compute.targetSslProxies.list
  • compute.targetTcpProxies.get
  • compute.targetTcpProxies.list
  • compute.targetVpnGateways.get
  • compute.targetVpnGateways.list
  • compute.urlMaps.get
  • compute.urlMaps.list
  • compute.vpnGateways.get
  • compute.vpnGateways.list
  • compute.vpnTunnels.get
  • compute.vpnTunnels.list
  • compute.zones.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • servicenetworking.services.get
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Rôle d'administrateur des règles de sécurité de l'organisation Compute

Nom Description Autorisations
roles/
compute.orgSecurityPolicyAdmin
Bêta
Contrôle complet des règles de sécurité de l'organisation Compute Engine.
  • compute.globalOperations.get
  • compute.globalOperations.getIamPolicy
  • compute.globalOperations.list
  • compute.globalOperations.setIamPolicy
  • compute.projects.get
  • compute.securityPolicies.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Règle d'utilisateur des règles de sécurité de l'organisation Compute

Nom Description Autorisations
roles/
compute.orgSecurityPolicyUser
Bêta
Affichez ou utilisez des règles de sécurité Compute Engine à associer à l'organisation ou aux dossiers.
  • compute.globalOperations.get
  • compute.globalOperations.getIamPolicy
  • compute.globalOperations.list
  • compute.globalOperations.setIamPolicy
  • compute.projects.get
  • compute.securityPolicies.get
  • compute.securityPolicies.list
  • compute.securityPolicies.use
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Rôle d'administrateur des ressources de l'organisation Compute

Nom Description Autorisations
roles/
compute.orgSecurityResourceAdmin
Bêta
Contrôle complet des associations des règles de sécurité Compute Engine à l'organisation ou aux dossiers.
  • compute.globalOperations.get
  • compute.globalOperations.getIamPolicy
  • compute.globalOperations.list
  • compute.globalOperations.setIamPolicy
  • compute.projects.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Rôle de connexion administrateur au système d'exploitation Compute

Nom Description Autorisations
roles/
compute.osAdminLogin

Permet de se connecter à une instance Compute Engine en tant qu'administrateur.

  • compute.instances.get
  • compute.instances.list
  • compute.instances.osAdminLogin
  • compute.instances.osLogin
  • compute.projects.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Rôle de connexion au système d'exploitation Compute

Nom Description Autorisations
roles/
compute.osLogin

Permet de se connecter à une instance Compute Engine en tant qu'utilisateur standard.

  • compute.instances.get
  • compute.instances.list
  • compute.instances.osLogin
  • compute.projects.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Rôle de connexion au système d'exploitation Compute en tant qu'utilisateur externe

Nom Description Autorisations
roles/
compute.osLoginExternalUser

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.

  • compute.oslogin.*

Rôle d'administrateur de la mise en miroir de paquets Compute

Nom Description Autorisations
roles/
compute.packetMirroringAdmin
Alpha
Permet de spécifier les ressources à mettre en miroir.
  • compute.networks.mirror
  • compute.projects.get
  • compute.subnetworks.mirror
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Rôle utilisateur de la mise en miroir de paquets Compute

Nom Description Autorisations
roles/
compute.packetMirroringUser
Alpha
Permet d'utiliser les mises en miroir de paquets Compute Engine.
  • compute.packetMirrorings.*
  • compute.projects.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Rôle d'administrateur de sécurité de Compute

Nom Description Autorisations
roles/
compute.securityAdmin

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 de mise en réseau qui gère le reste des ressources réseau, accordez le rôle securityAdmin au groupe de l'équipe de sécurité.

  • compute.firewalls.*
  • compute.globalOperations.get
  • compute.globalOperations.list
  • compute.instances.setShieldedInstanceIntegrityPolicy
  • compute.instances.setShieldedVmIntegrityPolicy
  • compute.instances.updateShieldedInstanceConfig
  • compute.instances.updateShieldedVmConfig
  • compute.networks.get
  • compute.networks.list
  • compute.networks.updatePolicy
  • compute.packetMirrorings.*
  • compute.projects.get
  • compute.regionOperations.get
  • compute.regionOperations.list
  • compute.regions.*
  • compute.routes.get
  • compute.routes.list
  • compute.securityPolicies.*
  • compute.sslCertificates.*
  • compute.sslPolicies.*
  • compute.subnetworks.get
  • compute.subnetworks.list
  • compute.zoneOperations.get
  • compute.zoneOperations.list
  • compute.zones.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Rôle d'administrateur Compute Storage

Nom Description Autorisations
roles/
compute.storageAdmin

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 des images du projet et que vous ne souhaitez pas qu'elle dispose du rôle d'éditeur sur celui-ci, attribuez à son compte le rôle storageAdmin sur le projet.

  • compute.diskTypes.*
  • compute.disks.*
  • compute.globalOperations.get
  • compute.globalOperations.list
  • compute.images.*
  • compute.licenseCodes.*
  • compute.licenses.*
  • compute.projects.get
  • compute.regionOperations.get
  • compute.regionOperations.list
  • compute.regions.*
  • compute.resourcePolicies.*
  • compute.snapshots.*
  • compute.zoneOperations.get
  • compute.zoneOperations.list
  • compute.zones.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Rôle de lecteur de Compute

Nom Description Autorisations
roles/
compute.viewer

Accès en lecture seule permettant d'obtenir et de répertorier des 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.

  • compute.acceleratorTypes.*
  • compute.addresses.get
  • compute.addresses.list
  • compute.autoscalers.get
  • compute.autoscalers.list
  • compute.backendBuckets.get
  • compute.backendBuckets.list
  • compute.backendServices.get
  • compute.backendServices.list
  • compute.commitments.get
  • compute.commitments.list
  • compute.diskTypes.*
  • compute.disks.get
  • compute.disks.getIamPolicy
  • compute.disks.list
  • compute.externalVpnGateways.get
  • compute.externalVpnGateways.list
  • compute.firewalls.get
  • compute.firewalls.list
  • compute.forwardingRules.get
  • compute.forwardingRules.list
  • compute.globalAddresses.get
  • compute.globalAddresses.list
  • compute.globalForwardingRules.get
  • compute.globalForwardingRules.list
  • compute.globalOperations.get
  • compute.globalOperations.getIamPolicy
  • compute.globalOperations.list
  • compute.healthChecks.get
  • compute.healthChecks.list
  • compute.httpHealthChecks.get
  • compute.httpHealthChecks.list
  • compute.httpsHealthChecks.get
  • compute.httpsHealthChecks.list
  • compute.images.get
  • compute.images.getFromFamily
  • compute.images.getIamPolicy
  • compute.images.list
  • compute.instanceGroupManagers.get
  • compute.instanceGroupManagers.list
  • compute.instanceGroups.get
  • compute.instanceGroups.list
  • compute.instanceTemplates.get
  • compute.instanceTemplates.getIamPolicy
  • compute.instanceTemplates.list
  • compute.instances.get
  • compute.instances.getGuestAttributes
  • compute.instances.getIamPolicy
  • compute.instances.getSerialPortOutput
  • compute.instances.getShieldedInstanceIdentity
  • compute.instances.getShieldedVmIdentity
  • compute.instances.list
  • compute.instances.listReferrers
  • compute.interconnectAttachments.get
  • compute.interconnectAttachments.list
  • compute.interconnectLocations.*
  • compute.interconnects.get
  • compute.interconnects.list
  • compute.licenseCodes.get
  • compute.licenseCodes.getIamPolicy
  • compute.licenseCodes.list
  • compute.licenses.get
  • compute.licenses.getIamPolicy
  • compute.licenses.list
  • compute.machineTypes.*
  • compute.maintenancePolicies.get
  • compute.maintenancePolicies.getIamPolicy
  • compute.maintenancePolicies.list
  • compute.networkEndpointGroups.get
  • compute.networkEndpointGroups.getIamPolicy
  • compute.networkEndpointGroups.list
  • compute.networks.get
  • compute.networks.list
  • compute.nodeGroups.get
  • compute.nodeGroups.getIamPolicy
  • compute.nodeGroups.list
  • compute.nodeTemplates.get
  • compute.nodeTemplates.getIamPolicy
  • compute.nodeTemplates.list
  • compute.nodeTypes.*
  • compute.projects.get
  • compute.regionBackendServices.get
  • compute.regionBackendServices.list
  • compute.regionOperations.get
  • compute.regionOperations.getIamPolicy
  • compute.regionOperations.list
  • compute.regions.*
  • compute.reservations.get
  • compute.reservations.list
  • compute.resourcePolicies.get
  • compute.resourcePolicies.list
  • compute.routers.get
  • compute.routers.list
  • compute.routes.get
  • compute.routes.list
  • compute.securityPolicies.get
  • compute.securityPolicies.getIamPolicy
  • compute.securityPolicies.list
  • compute.snapshots.get
  • compute.snapshots.getIamPolicy
  • compute.snapshots.list
  • compute.sslCertificates.get
  • compute.sslCertificates.list
  • compute.sslPolicies.get
  • compute.sslPolicies.list
  • compute.sslPolicies.listAvailableFeatures
  • compute.subnetworks.get
  • compute.subnetworks.getIamPolicy
  • compute.subnetworks.list
  • compute.targetHttpProxies.get
  • compute.targetHttpProxies.list
  • compute.targetHttpsProxies.get
  • compute.targetHttpsProxies.list
  • compute.targetInstances.get
  • compute.targetInstances.list
  • compute.targetPools.get
  • compute.targetPools.list
  • compute.targetSslProxies.get
  • compute.targetSslProxies.list
  • compute.targetTcpProxies.get
  • compute.targetTcpProxies.list
  • compute.targetVpnGateways.get
  • compute.targetVpnGateways.list
  • compute.urlMaps.get
  • compute.urlMaps.list
  • compute.urlMaps.validate
  • compute.vpnGateways.get
  • compute.vpnGateways.list
  • compute.vpnTunnels.get
  • compute.vpnTunnels.list
  • compute.zoneOperations.get
  • compute.zoneOperations.getIamPolicy
  • compute.zoneOperations.list
  • compute.zones.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Rôle d'administrateur VPC Compute partagé

Nom Description Autorisations
roles/
compute.xpnAdmin

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.

Ce rôle ne peut être accordé sur l'organisation que par un administrateur d'organisation.

Google Cloud recommande que l'administrateur VPC partagé soit le propriétaire du projet hôte VPC partagé. L'administrateur VPC partagé est chargé d'accorder le rôle compute.networkUser aux propriétaires de service, tandis que le propriétaire du projet hôte VPC partagé contrôle le projet lui-même. Il est plus facile de gérer le projet si un seul principal (individu ou groupe) peut remplir ces deux rôles.

  • compute.globalOperations.get
  • compute.globalOperations.list
  • compute.organizations.*
  • compute.projects.get
  • compute.subnetworks.getIamPolicy
  • compute.subnetworks.setIamPolicy
  • resourcemanager.organizations.get
  • resourcemanager.projects.get
  • resourcemanager.projects.getIamPolicy
  • resourcemanager.projects.list

Rôle d'administrateur DNS

Nom Description Autorisations
roles/
dns.admin
Fournit un accès en lecture/écriture à toutes les ressources Cloud DNS.
  • compute.networks.get
  • compute.networks.list
  • dns.changes.*
  • dns.dnsKeys.*
  • dns.managedZoneOperations.*
  • dns.managedZones.*
  • dns.networks.*
  • dns.policies.create
  • dns.policies.delete
  • dns.policies.get
  • dns.policies.list
  • dns.policies.update
  • dns.projects.*
  • dns.resourceRecordSets.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Rôle de pair DNS

Nom Description Autorisations
roles/
dns.peer
Bêta
Accès aux réseaux cibles avec des zones d'appairage DNS.
  • dns.networks.targetWithPeeringZone

Rôle de lecteur DNS

Nom Description Autorisations
roles/
dns.reader
Fournit un accès en lecture seule à toutes les ressources Cloud DNS.
  • compute.networks.get
  • dns.changes.get
  • dns.changes.list
  • dns.dnsKeys.*
  • dns.managedZoneOperations.*
  • dns.managedZones.get
  • dns.managedZones.list
  • dns.policies.get
  • dns.policies.list
  • dns.projects.*
  • dns.resourceRecordSets.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Rôle Administrateur de compte de service

Nom Description Autorisations
roles/
iam.serviceAccountAdmin
Permet de créer et de gérer des comptes de service.
  • iam.serviceAccounts.create
  • iam.serviceAccounts.delete
  • iam.serviceAccounts.get
  • iam.serviceAccounts.getIamPolicy
  • iam.serviceAccounts.list
  • iam.serviceAccounts.setIamPolicy
  • iam.serviceAccounts.update
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Rôle Créer des comptes de service

Nom Description Autorisations
roles/
iam.serviceAccountCreator
Accès permettant de créer des comptes de service.
  • iam.serviceAccounts.create
  • iam.serviceAccounts.get
  • iam.serviceAccounts.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Rôle Supprimer des comptes de service

Nom Description Autorisations
roles/
iam.serviceAccountDeleter
Accès permettant de supprimer des comptes de service.
  • iam.serviceAccounts.delete
  • iam.serviceAccounts.get
  • iam.serviceAccounts.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Rôle Administrateur de clés de compte de service

Nom Description Autorisations
roles/
iam.serviceAccountKeyAdmin
Permet de créer et de gérer (et d'alterner) des clés de compte de service.
  • iam.serviceAccountKeys.*
  • iam.serviceAccounts.get
  • iam.serviceAccounts.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Rôle Créateur de jetons du compte de service

Nom Description Autorisations
roles/
iam.serviceAccountTokenCreator
Permet d'emprunter l'identité des comptes de service (de créer des jetons d'accès OAuth2, de signer des blobs ou des JWT, etc.).
  • iam.serviceAccounts.get
  • iam.serviceAccounts.getAccessToken
  • iam.serviceAccounts.implicitDelegation
  • iam.serviceAccounts.list
  • iam.serviceAccounts.signBlob
  • iam.serviceAccounts.signJwt
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Rôle Utilisateur du compte de service

Nom Description Autorisations
roles/
iam.serviceAccountUser
Permet d'exécuter des opérations en tant que compte de service.
  • iam.serviceAccounts.actAs
  • iam.serviceAccounts.get
  • iam.serviceAccounts.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Rôle Utilisateur Workload Identity

Nom Description Autorisations
roles/
iam.workloadIdentityUser
Permet d'emprunter l'identité des comptes de service des charges de travail GKE.
  • iam.serviceAccounts.get
  • iam.serviceAccounts.getAccessToken
  • iam.serviceAccounts.list

Rôle serviceAccountUser

Lorsqu'elle est associée à roles/compute.instanceAdmin.v1, 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 un iam.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.

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 de ligne de commande 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 et attribuez des rôles Cloud IAM aux comptes de service afin de limiter l'accès à vos instances. Utiliser les rôles Cloud 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 Cloud 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 Cloud 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, consultez la documentation Groupes d'instances gérés et Cloud IAM.

Opérations non acceptées

Vous ne pouvez pas accorder l'accès pour effectuer des mises à jour progressives sur des groupes d'instances à l'aide des rôles Cloud 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.

Étapes suivantes

Cette page vous a-t-elle été utile ? Évaluez-la :

Envoyer des commentaires concernant…

Documentation Compute Engine