Contrôler les accès à l'aide de rôles et d'autorisations IAM

Le service de transfert de stockage utilise les autorisations et rôles IAM (Identity and Access Management) pour contrôler qui peut accéder aux ressources du service. Les deux principaux types de ressources disponibles au sein du service de transfert de stockage sont les tâches et les opérations. Dans la hiérarchie des stratégies IAM, les tâches sont des ressources enfants de projets, tandis que les opérations sont des ressources enfants de tâches.

Pour accorder l'accès à une ressource, attribuez une ou plusieurs autorisations ou un ou plusieurs rôles à un utilisateur, un groupe ou un compte de service.

Autorisations

Dans le cadre du service de transfert de stockage, vous pouvez accorder les autorisations suivantes :

Autorisation liée au projet de transfert

Autorisation Description
storagetransfer.projects.getServiceAccount Autorise à lire le compte de service Google utilisé par le service de transfert de stockage pour accéder aux buckets Cloud Storage.

Autorisations liées aux tâches de transfert

Autorisation Description
storagetransfer.jobs.create Autorise à créer des tâches de transfert.
storagetransfer.jobs.delete Autorise à supprimer des tâches de transfert existantes.

Les tâches de transfert sont supprimées par un appel à la fonction patch. Toutefois, les utilisateurs doivent disposer de cette autorisation lors de la suppression de tâches de transfert afin d'éviter toute erreur d'autorisation.
storagetransfer.jobs.get Autorise à récupérer des tâches spécifiques.
storagetransfer.jobs.list Autorise à répertorier l'ensemble des tâches de transfert.
storagetransfer.jobs.patch Autorise à mettre à jour les configurations de tâches de transfert sans les supprimer.

Autorisations liées aux opérations de transfert

Autorisation Description
storagetransfer.operations.cancel Autorise à annuler des opérations de transfert.
storagetransfer.operations.get Autorise à obtenir les détails des opérations de transfert.
storagetransfer.operations.list Autorise à répertorier l'ensemble des opérations de transfert.
storagetransfer.operations.pause Autorise à mettre en pause les opérations de transfert.
storagetransfer.operations.resume Autorise à reprendre les opérations de transfert mises en pause.

Rôles

Cette section décrit les rôles que vous pouvez définir pour le service de transfert de stockage, et fournit des conseils pour la création de rôles personnalisés.

Matrice de comparaison des rôles prédéfinis

Vous pouvez attribuer le rôle de projet suivant ou les rôles prédéfinis associés au service de transfert de stockage :

Capacité roles/editor roles/storagetransfer.
admin user viewer
Répertorier/obtenir des tâches
Créer des tâches
Mettre à jour des tâches
Supprimer des tâches
Répertorier/obtenir des opérations de transfert
Mettre en pause/reprendre des opérations de transfert
Consulter les détails des comptes de service Google utilisés par le service de transfert de stockage pour accéder aux buckets Cloud Storage.

L'autorisation Mettre à jour des tâches ne comprend pas l'autorisation de supprimer des tâches.

Dans le cadre du transfert sur site, le rôle Administrateur est requis pour les tâches suivantes :

  • Répertorier des agents
  • Lire la limite de bande passante du projet
  • Définir la limite de bande passante du projet

Détails des rôles prédéfinis

Le tableau suivant décrit en détail les rôles prédéfinis pour le service de transfert de stockage :

Rôle Description Autorisations associées

roles/storagetransfer.
admin

Fournit toutes les autorisations pour le service de transfert de stockage, y compris la suppression de tâches.

Justification : Il s'agit du rôle de plus haut niveau possédant les responsabilités les plus étendues. Cela correspond au super-utilisateur qui est en appui de ses collègues lors des transferts. Ce rôle convient particulièrement aux personnes chargées d'administrer les transferts, typiquement les administrateurs informatiques.

Toutes les autorisations sont accordées
roles/storagetransfer.
user

Fournit à l'utilisateur les autorisations permettant de créer, d'obtenir, de mettre à jour et de répertorier des tâches de transfert au sein du projet. Toutefois, l'utilisateur n'est pas autorisé à supprimer ses propres tâches.

Justification : Ce rôle permet de séparer d'un côté la création et la maintenance de tâches, et de l'autre leur suppression. Ce rôle convient particulièrement aux utilisateurs qui doivent exécuter un transfert dans le cadre de leurs fonctions, par exemple un employé. Ce rôle ne permet pas de supprimer le transfert, de sorte que les auditeurs ou le personnel de sécurité puissent consulter un enregistrement des transferts passés sans la moindre altération.

  • storagetransfer.projects.getServiceAccount
  • storagetransfer.jobs.create
  • storagetransfer.jobs.get
  • storagetransfer.jobs.list
  • storagetransfer.jobs.patch
  • storagetransfer.operations.get
  • storagetransfer.operations.list
  • storagetransfer.operations.pause
  • storagetransfer.operations.resume

roles/storagetransfer.
viewer

Autorisations permettant de répertorier et d'obtenir des tâches et des opérations de transfert au sein du projet. L'utilisateur ne peut pas planifier, mettre à jour ou supprimer des tâches.

Justification : Le rôle de lecteur est conçu pour un accès en lecture seule, afin de visualiser les tâches et les opérations de transfert. Ce rôle permet de séparer les tâches d'audit et de création de rapports de la création et de la maintenance des tâches. Il convient particulièrement aux utilisateurs ou aux équipes internes qui réalisent l'audit des transferts, tels que les responsables de la sécurité, de la conformité ou des unités commerciales.

  • storagetransfer.projects.getServiceAccount
  • storagetransfer.jobs.get
  • storagetransfer.jobs.list
  • storagetransfer.operations.get
  • storagetransfer.operations.list

Rôles personnalisés

Lors de la création de rôles personnalisés, il est recommandé de créer des rôles à partir des rôles prédéfinis afin d'établir la bonne combinaison d'autorisations.

Cloud Console ne fonctionnera pas correctement si le rôle personnalisé ne dispose pas des autorisations requises. Par exemple, certains outils de Cloud Console partent du principe que le rôle dispose d'un accès en lecture pour afficher un élément avant de le modifier. Par conséquent, les écrans de Cloud Console ne fonctionneront pas correctement pour un rôle doté uniquement d'autorisations en écriture.

Étape suivante