Rôles prédéfinis
Le tableau suivant décrit les rôles Cloud Identity and Access Management (Cloud IAM) associés à Cloud Storage et répertorie les autorisations comprises dans chacun d'entre eux. Sauf indication contraire, ces rôles peuvent être appliqués à des projets, des buckets ou des dossiers gérés.
Pour apprendre à contrôler l'accès aux buckets, consultez la page Utiliser les autorisations IAM. Pour savoir comment contrôler l'accès aux dossiers gérés, consultez la page Utiliser IAM pour les dossiers gérés.
Rôle | Description | Autorisations |
---|---|---|
Créateur des objets de l'espace de stockage (roles/storage.objectCreator ) |
Permet aux utilisateurs de créer des objets, des dossiers et des dossiers gérés. mais pas de les afficher, de les supprimer ni de les remplacer. Ce rôle ne permet pas d'obtenir des listes de contrôle d'accès (LCA) d'objets ni de les définir dans le cadre d'une requête de mise à jour d'objet. | orgpolicy.policy.get 1resourcemanager.projects.get 2resourcemanager.projects.list 2storage.objects.create storage.folders.create storage.managedFolders.create storage.multipartUploads.create storage.multipartUploads.abort storage.multipartUploads.listParts |
Lecteur des objets Storage (roles/storage.objectViewer ) |
Permet d'afficher les objets et leurs métadonnées, à l'exclusion des listes de contrôle d'accès. Permet également de répertorier les objets, les dossiers et les dossiers gérés d'un bucket. |
resourcemanager.projects.get 2resourcemanager.projects.list 2storage.folders.get storage.folders.list storage.managedFolders.get storage.managedFolders.list storage.objects.get storage.objects.list |
Utilisateur d'objets Storage
(roles/storage.objectUser ) |
Permet de créer, d'afficher, de lister, de mettre à jour et de supprimer des objets, des dossiers et des dossiers gérés, ainsi que leurs métadonnées. Ce rôle ne permet pas d'obtenir ni de définir des LCA ou des stratégies IAM. | orgpolicy.policy.get 1resourcemanager.projects.get 2resourcemanager.projects.list 2storage.folders.* storage.managedFolders.create storage.managedFolders.delete storage.managedFolders.list storage.managedFolders.get storage.multipartUploads.* storage.objects.create storage.objects.delete storage.objects.get storage.objects.list storage.objects.restore storage.objects.update |
Administrateur des objets de l'espace de stockage (roles/storage.objectAdmin ) |
Accorde un contrôle complet sur les objets et les dossiers, y compris répertorier, créer, afficher, renommer et supprimer des objets et des dossiers et définir des LCA d'objets. Permet également de créer, supprimer, obtenir et répertorier des dossiers gérés. | orgpolicy.policy.get 1resourcemanager.projects.get 2resourcemanager.projects.list 2storage.folders.* storage.managedFolders.create storage.managedFolders.delete storage.managedFolders.get storage.managedFolders.list storage.objects.* storage.multipartUploads.* |
Administrateur de dossier Storage (roles/storage.folderAdmin ) |
Offre un contrôle complet sur les objets, les dossiers et les dossiers gérés y compris répertorier, créer, afficher, supprimer et gérer les autorisations IAM. | orgpolicy.policy.get 1resourcemanager.projects.get 2resourcemanager.projects.list 2storage.folders.* storage.managedFolders.* storage.multipartUploads.* storage.objects.* |
Administrateur de clés HMAC pour le stockage (roles/storage.hmacKeyAdmin ) |
Octroie le contrôle total des clés HMAC d'un projet. Ce rôle ne peut être appliqué qu'à un projet. | orgpolicy.policy.get 1storage.hmacKeys.* |
Administrateur de l'espace de stockage (roles/storage.admin ) |
Offre un contrôle complet sur les buckets, les dossiers, les dossiers gérés et les objets, y compris sur l'obtention et la définition de LCA d'objets ou de stratégies IAM. Accorde également un contrôle complet sur les opérations de longue durée. Lorsque ce rôle est appliqué à un bucket individuel, le contrôle ne concerne que le bucket spécifié, ainsi que les dossiers, objets et opérations de longue durée gérés qu'il contient. |
firebase.projects.get orgpolicy.policy.get 1resourcemanager.projects.get 2resourcemanager.projects.list 2storage.buckets.* storage.bucketOperations.* storage.folders.* storage.managedFolders.* storage.objects.* storage.multipartUploads.* |
Administrateur Storage Insights (roles/storageinsights.admin ) |
Accorde le contrôle total des rapports et des configurations d'inventaire Storage Insights. | cloudresourcemanager.projects.get cloudresourcemanager.projects.list storageinsights.reportConfigs.* storageinsights.reportDetails.* |
Lecteur Storage Insights (roles/storageinsights.viewer ) |
Accorde un accès en lecture seule aux rapports et aux configurations d'inventaire Storage Insights. | cloudresourcemanager.projects.get cloudresourcemanager.projects.list storageinsights.reportConfigs.list storageinsights.reportConfigs.get storageinsights.reportDetails.list storageinsights.reportDetails.get |
Service du collecteur de Storage Insights (roles/storage.insightsCollectorService ) |
Accorde un accès en lecture aux métadonnées d'objets dans les rapports d'inventaire. | resourcemanager.projects.get resourcemanager.projects.list storage.buckets.getObjectInsights storage.buckets.get |
1 L'autorisation orgpolicy.policy.get
permet aux comptes principaux de connaître les contraintes de règles d'administration auxquelles un projet est soumis.
Cette autorisation n'est actuellement effective que si le rôle est accordé au niveau du projet ou à un niveau supérieur.
2 Pour en savoir plus sur les autorisations resourcemanager.projects.*
, consultez la page Contrôle des accès aux projets avec IAM.
Rôles de base
Les rôles de base existaient avant IAM. Ces rôles ont des caractéristiques uniques :
Les rôles de base ne peuvent être accordés que pour un projet entier, et non pour certains buckets du projet. Comme les autres rôles que vous accordez pour un projet, les rôles de base s'appliquent à tous les buckets et objets du projet.
Les rôles de base contiennent des autorisations supplémentaires pour d'autres services Google Cloud, qui ne sont pas traités dans cette section. Pour en savoir plus sur les autorisations accordées par les rôles de base, consultez la section Rôles de base.
Chaque rôle de base possède une valeur d'usage qui vous permet d'utiliser le rôle de base comme s'il s'agissait d'un groupe. Lorsqu'il est utilisé de cette manière, toute entité principale disposant du rôle de base est considérée comme faisant partie du groupe. Tous les membres du groupe obtiennent un accès supplémentaire aux ressources en fonction du niveau d'accès dont ils disposent.
Les valeurs pratiques peuvent être utilisées lors de l'attribution de rôles pour des buckets.
Les valeurs d'usage peuvent être utilisées lors de la définition de LCA sur des objets.
Les rôles de base n'accordent pas naturellement un accès aux ressources Cloud Storage, comme leurs noms peuvent suggérer. À la place, ils fournissent une partie de l'accès attendu de manière intrinsèque, et le reste de l'accès attendu, à l'aide de valeurs d'usage. Étant donné que les valeurs d'usage peuvent être ajoutées manuellement ou supprimées comme n'importe quel autre entité principale IAM, il est possible de révoquer l'accès que les entités principales pourraient autrement s'attendre à avoir.
Pour en savoir plus sur l'accès supplémentaire que les entités principales bénéficiant de rôles de base obtiennent généralement en raison de ces valeurs d'usage, consultez la section Comportement modifiable.
Autorisations intrinsèques
Le tableau suivant décrit les autorisations Cloud Storage qui sont toujours associées à chaque rôle de base.
Rôle | Description | Autorisations Cloud Storage |
---|---|---|
Lecteur (roles/viewer ) |
Octroie l'autorisation de répertorier les buckets du projet, d'afficher leurs métadonnées lors de la création d'une liste (à l'exclusion des LCA), ainsi que de répertorier et d'obtenir les clés HMAC du projet. | storage.buckets.list storage.hmacKeys.get storage.hmacKeys.list |
Éditeur (roles/editor ) |
Octroie l'autorisation de créer, de répertorier et de supprimer des buckets dans le projet, d'afficher leurs métadonnées lors de la création d'une liste (à l'exclusion des LCA), ainsi que de contrôler les clés HMAC du projet. | storage.buckets.create storage.buckets.delete storage.buckets.list storage.hmacKeys.* |
Propriétaire (roles/owner ) |
Octroie l'autorisation de créer, de répertorier et de supprimer des buckets dans le projet, d'afficher les métadonnées des buckets lors de la création d'une liste (à l'exclusion des LCA), de créer, supprimer et répertorier des liaisons de tags, et de contrôler les clés HMAC du projet. Plus généralement, dans Google Cloud, les entités principales dotées de ce rôle peuvent effectuer des tâches administratives, telles que la modification des rôles des entités principales pour le projet ou la modification de la facturation. |
storage.buckets.create storage.buckets.delete storage.buckets.list storage.buckets.createTagBinding storage.buckets.deleteTagBinding storage.buckets.listEffectiveTags storage.buckets.listTagBindings storage.hmacKeys.* |
Comportement modifiable
Les comptes principaux avec des rôles de base disposent souvent d'un accès supplémentaire aux buckets et aux objets d'un projet en raison des valeurs d'usage. Lors de la création d'un bucket, des valeurs d'usage sont accordées à certains buckets. Toutefois, vous pouvez modifier vos stratégies IAM de bucket et vos LCA d'objet pour supprimer ou modifier l'accès.
Lorsque vous créez un bucket pour lequel l'accès uniforme au niveau du bucket est activé, l'accès suivant est accordé via des valeurs d'usage :
Les comptes principaux ayant le rôle
roles/viewer
obtiennent les rôlesroles/storage.legacyBucketReader
etroles/storage.legacyObjectReader
pour le bucket.Les comptes principaux ayant le rôle
roles/editor
obtiennent les rôlesroles/storage.legacyBucketOwner
etroles/storage.legacyObjectOwner
pour le bucketLes comptes principaux ayant le rôle
roles/owner
obtiennent les rôlesroles/storage.legacyBucketOwner
etroles/storage.legacyObjectOwner
pour le bucket.
Lorsque vous créez un bucket pour lequel l'accès uniforme au niveau du bucket n'est pas activé, l'accès suivant est accordé à l'aide des valeurs d'usage :
Les comptes principaux ayant le rôle
roles/viewer
obtiennent le rôleroles/storage.legacyBucketReader
pour le bucket.Les comptes principaux ayant le rôle
roles/editor
obtiennent le rôleroles/storage.legacyBucketOwner
pour le bucket.Les comptes principaux ayant le rôle
roles/owner
obtiennent le rôleroles/storage.legacyBucketOwner
pour le bucket.De plus, le bucket dispose d'une Liste de contrôle d'accès (LCA) d'objet par défaut. Cette LCA par défaut est souvent appliquée aux nouveaux objets du bucket et accorde souvent un accès supplémentaire aux valeurs d'usage.
Anciens rôles prédéfinis
Le tableau suivant répertorie les rôles IAM équivalant aux autorisations LCA (Liste de contrôle d'accès). Vous ne pouvez octroyer des anciens rôles que pour certains buckets, et non pour des projets.
Rôle | Description | Autorisations |
---|---|---|
Lecteur des anciens objets de l'espace de stockage (roles/storage.legacyObjectReader ) |
Octroie l'autorisation d'afficher des objets et leurs métadonnées, à l'exclusion des LCA. | storage.objects.get |
Propriétaire des anciens objets de l'espace de stockage (roles/storage.legacyObjectOwner ) |
Octroie l'autorisation d'afficher et de modifier des objets et leurs métadonnées, y compris les LCA. | storage.objects.get storage.objects.update storage.objects.setRetention storage.objects.overrideUnlockedRetention storage.objects.setIamPolicy storage.objects.getIamPolicy |
Lecteur des anciens buckets Storage (roles/storage.legacyBucketReader ) |
Octroie l'autorisation de répertorier le contenu d'un bucket et de lire ses métadonnées, à l'exclusion des stratégies IAM. Permet également de lire les métadonnées des objets lors de la création d'une liste des objets et des dossiers gérés (à l'exclusion des stratégies IAM).
L'utilisation de ce rôle est également reflétée dans les LCA du bucket. Pour en savoir plus, consultez la section sur le lien entre Cloud IAM et les LCA. |
storage.buckets.get storage.objects.list storage.managedFolders.get storage.managedFolders.list storage.multipartUploads.list |
Rédacteur des anciens buckets Storage (roles/storage.legacyBucketWriter ) |
Accorde l'autorisation de créer, remplacer, lister et supprimer des objets et des dossiers gérés ; de créer des objets ayant une configuration de conservation ; de lire les métadonnées des objets et des dossiers gérés lors de la création des listes (à l'exclusion des stratégies IAM) ; et de lire les métadonnées des buckets, à l'exclusion des stratégies IAM.
L'utilisation de ce rôle est également reflétée dans les LCA du bucket. Pour en savoir plus, consultez la section sur le lien entre Cloud IAM et les LCA. |
storage.buckets.get storage.objects.list storage.objects.create storage.objects.delete storage.objects.restore storage.objects.setRetention storage.managedFolders.create storage.managedFolders.delete storage.managedFolders.get storage.managedFolders.list storage.multipartUploads.* |
Propriétaire des anciens buckets Storage (roles/storage.legacyBucketOwner ) |
Octroie l'autorisation de créer, de remplacer, de répertorier et de supprimer des objets et des dossiers gérés ; de créer des objets ayant une configuration de conservation ; de créer, supprimer et répertorier des liaisons de tags ; de lire les métadonnées des objets lors de la création d'une liste (à l'exclusion des stratégies IAM) ; de lire les métadonnées des dossiers gérés lors de la création d'une liste (y compris les stratégies IAM) ; de lire et modifier les métadonnées des buckets (y compris les stratégies IAM) ; et de gérer les opérations de longue durée.
L'utilisation de ce rôle est également reflétée dans les LCA du bucket. Pour en savoir plus, consultez la section sur le lien entre Cloud IAM et les LCA. |
storage.buckets.get storage.buckets.createTagBinding storage.buckets.deleteTagBinding storage.buckets.listEffectiveTags storage.buckets.listTagBindings storage.buckets.update storage.buckets.enableObjectRetention storage.buckets.restore storage.buckets.setIamPolicy storage.buckets.getIamPolicy storage.bucketOperations.* storage.managedFolders.* storage.objects.list storage.objects.create storage.objects.delete storage.objects.restore storage.objects.setRetention storage.multipartUploads.* |
Rôles personnalisés
Vous pouvez définir vos propres rôles. Ils regroupent les autorisations que vous spécifiez. Pour ce faire, IAM propose des rôles personnalisés.
Étape suivante
Utilisez les autorisations IAM pour contrôler l'accès aux buckets et aux objets.
Apprenez-en plus sur chaque autorisation IAM pour Cloud Storage.
Consultez les références IAM disponibles pour Cloud Storage, telles que les autorisations IAM qui permettent aux utilisateurs d'effectuer des actions avec divers outils et API.
Consultez la page Comprendre les rôles pour en savoir plus sur les autres rôles Google Cloud.