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 principaux types de ressources disponibles au sein du service de transfert de stockage sont les tâches, les opérations et les pools d'agents. 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
Le tableau suivant décrit les autorisations liées aux tâches du service de transfert de stockage :
| 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.run |
Permet d'exécuter toutes les tâches de transfert. |
storagetransfer.jobs.update |
Autorise à mettre à jour les configurations de tâches de transfert sans les supprimer. |
Autorisations liées aux opérations de transfert
Le tableau suivant décrit les autorisations liées aux opérations du service de transfert de stockage :
| Autorisation | Description |
|---|---|
storagetransfer.operations.assign |
Utilisé par les agents de transfert pour attribuer des opérations. Non disponible dans les rôles personnalisés. Attribuez plutôt le rôle prédéfini roles/storagetransfer.transferAgent. |
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.report |
Utilisé par les agents de transfert pour signaler l'état de l'opération. Non disponible dans les rôles personnalisés. Attribuez plutôt le rôle prédéfini roles/storagetransfer.transferAgent. |
storagetransfer.operations.resume |
Autorise à reprendre les opérations de transfert mises en pause. |
Autorisations liées au pool d'agents de transfert
Le tableau suivant décrit les autorisations pour les pools d'agents de transfert :
| Autorisation | Description |
|---|---|
storagetransfer.agentpools.create |
Peut créer des pools d'agents et configurer des limites de bande passante. |
storagetransfer.agentpools.update |
Peut mettre à jour les pools d'agents et les limites de bande passante. |
storagetransfer.agentpools.delete |
Peut supprimer des pools d'agents. |
storagetransfer.agentpools.get |
Peut obtenir des informations et des limites de bande passante pour des pools d'agents spécifiques. |
storagetransfer.agentpools.list |
Peut répertorier des informations et des limites de bande passante pour tous les pools d'agents du projet. |
storagetransfer.agentpools.report |
Utilisé par les agents de transfert pour signaler l'état. Non disponible dans les rôles personnalisés. Attribuez plutôt le rôle prédéfini roles/storagetransfer.transferAgent. |
Rôles prédéfinis
Cette section décrit les rôles prédéfinis pour le service de transfert de stockage. Les rôles sont les méthodes privilégiées pour définir des autorisations IAM.
Comparaison des rôles
Vous pouvez attribuer les rôles prédéfinis du service de transfert de stockage suivants aux comptes principaux :
| Capacité | Administrateur de transfert de stockage ( roles/storagetransfer.admin) |
Utilisateur du transfert de stockage ( roles/storagetransfer.user) |
Lecteur du transfert de stockage ( roles/storagetransfer.viewer) |
|---|---|---|---|
| Répertorier et obtenir des jobs | |||
| Créer et configurer des jobs | |||
| Exécuter et mettre à jour des jobs | |||
| Supprimer des jobs | |||
| Répertorier et obtenir les opérations de transfert | |||
| Suspendre, reprendre et annuler des opérations de transfert | |||
| Consulter les détails du compte de service du service de transfert de stockage | |||
| Lister et obtenir des pools d'agents | |||
| Créer et mettre à jour des pools d'agents | |||
| Supprimer des pools d'agents | |||
| Définir des limites de bande passante pour les pools d'agents |
Détails du rôle
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 |
|---|---|---|
| Administrateur du transfert de stockage ( roles/storagetransfer.admin) |
Fournit un accès administrateur complet à toutes les ressources du service de transfert de stockage, y compris la création, la mise à jour, l'exécution et la suppression des jobs de transfert et des pools d'agents. |
|
| Utilisateur du transfert de stockage ( roles/storagetransfer.user) |
Fournit des autorisations permettant de créer, d'obtenir, de mettre à jour et d'exécuter des jobs de transfert et des pools d'agents au sein du projet. Impossible de supprimer les jobs de transfert ou les pools d'agents, ce qui permet de conserver un enregistrement d'audit complet des transferts passés. |
|
| Lecteur du transfert de stockage ( roles/storagetransfer.viewer) |
Fournit un accès en lecture seule pour afficher et lister les jobs de transfert, les opérations et les pools d'agents dans le projet. Impossible de créer, d'exécuter, de mettre à jour ou de supprimer des transferts. |
|
Agent Storage Transfer (roles/storagetransfer.transferAgent) |
Attribue aux agents de transfert les autorisations requises pour effectuer un transfert à l'aide du service de transfert de stockage. Depuis le 1er mai 2024, les autorisations Attribuez ce rôle à l'utilisateur ou au compte de service utilisé par les agents. |
|
Agent du service de transfert de stockage (roles/storagetransfer.serviceAgent)
|
Attribue à l'agent de service du service de transfert de stockage les autorisations requises pour créer et modifier des sujets Pub/Sub afin de communiquer de Google Cloud vers les agents de transfert. Attribuez ce rôle à l'agent de service du service de transfert de stockage. |
|
Rôles personnalisés
Vous pouvez créer et appliquer des rôles IAM personnalisés pour répondre aux exigences d'accès de votre organisation.
Lorsque vous créez des rôles personnalisés, nous vous recommandons d'utiliser une combinaison de rôles prédéfinis pour vous assurer que les autorisations appropriées sont incluses.
La console Google Cloud ne fonctionnera pas correctement si le rôle personnalisé ne dispose pas des autorisations requises. Par exemple, certains outils de la console Google Cloud 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 la console Google Cloud ne fonctionneront pas correctement pour un rôle doté uniquement d'autorisations en écriture.