La création, la gestion ou la surveillance des transferts avec le service de transfert de stockage nécessitent des autorisations et des rôles IAM pour votre compte utilisateur, votre outil d'automatisation ou votre compte de service.
Ces autorisations s'appliquent aux transferts avec et sans agent. Pour obtenir des informations générales sur l'attribution de rôles IAM, consultez Accorder, modifier et révoquer les accès aux ressources.
Autorisations requises pour le service de transfert de stockage
Pour interagir avec le service de transfert de stockage, vous devez attribuer l'un des rôles prédéfinis suivants ou des autorisations personnalisées équivalentes à votre compte utilisateur, groupe ou compte de service sur le projet Google Cloud qui crée le transfert :
| Rôle | Capacités clés |
|---|---|
|
Administrateur Storage Transfer ( roles/storagetransfer.admin)
|
Contrôle total sur les ressources du service de transfert de stockage :
|
|
Utilisateur du transfert de stockage ( roles/storagetransfer.user)
|
Créer, mettre à jour et exécuter des jobs de transfert et des pools d'agents sans autorisations de suppression :
|
|
Lecteur du transfert de stockage ( roles/storagetransfer.viewer)
|
Accès en lecture seule pour inspecter les jobs de transfert, les opérations et les pools d'agents. Recommandé pour la surveillance et l'audit. |
Pour obtenir la liste détaillée des autorisations individuelles dans chaque rôle, consultez la documentation de référence sur les rôles et les autorisations. Si vous configurez un job de transfert pour déléguer des autorisations à un compte de service géré par l'utilisateur, votre compte utilisateur doit également disposer du rôle Utilisateur du compte de service (roles/iam.serviceAccountUser) sur ce compte de service. Consultez Déléguer des autorisations d'agent de service à un compte de service géré par l'utilisateur.
Attribuer un rôle du service de transfert de stockage à votre projet
Console
Dans la console Google Cloud , accédez à la page IAM.
Assurez-vous que votre projet de transfert est sélectionné, puis cliquez sur Accorder l'accès.
Dans le champ Nouveaux comptes principaux, saisissez l'adresse e-mail de votre compte utilisateur ou de votre compte de service.
Dans la liste déroulante Sélectionner un rôle, recherchez et sélectionnez
Storage Transfer Admin,Storage Transfer UserouStorage Transfer Viewer.Facultatif : Pour permettre à la console Google Cloud de vérifier les autorisations d'agent de service manquantes et vous inviter à les accorder automatiquement lors de la création du transfert :
- Cliquez sur + Ajouter un autre rôle.
- Recherchez et sélectionnez Lecteur de rôles (
roles/iam.roleViewer), qui accorderesourcemanager.projects.getIamPolicy.
Cliquez sur Enregistrer.
gcloud
Attribuez le rôle Service de transfert de stockage :
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="PRINCIPAL" \ --role="roles/storagetransfer.ROLE"
Remplacez :
- PROJECT_ID : projet dans lequel vous exécuterez les transferts.
- PRINCIPAL : votre compte au format
user:EMAILpour un compte utilisateur ouserviceAccount:SA_EMAILpour un compte de service. - ROLE :
admin,userouviewer.
Facultatif : Pour autoriser la console Google Cloud à vérifier si des autorisations d'agent de service sont manquantes et vous inviter à les accorder automatiquement lors de la création du transfert, attribuez le rôle Lecteur de rôle :
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="PRINCIPAL" \ --role="roles/iam.roleViewer"
Autorisations Cloud Storage requises
Pour configurer un transfert qui utilise des buckets Cloud Storage comme source, récepteur ou emplacement de préproduction intermédiaire, votre compte doit être autorisé à afficher et à modifier la stratégie IAM du bucket afin de pouvoir accorder les rôles requis à l'agent de service ou au compte d'agent de transfert du service de transfert de stockage.
Votre compte nécessite :
storage.buckets.getIamPolicystorage.buckets.setIamPolicy
L'un des rôles prédéfinis suivants accorde ces autorisations :
- Administrateur de l'espace de stockage (
roles/storage.admin) - Propriétaire des anciens buckets Storage (
roles/storage.legacyBucketOwner)
Attribuer un rôle Cloud Storage sur un bucket
Console
- Dans la console Google Cloud , accédez à la page Buckets de Cloud Storage.
- Cliquez sur le menu à développer Bucket () associé au bucket, puis sélectionnez Modifier l'accès.
- Cliquez sur + Ajouter un compte principal.
- Dans le champ Nouveaux comptes principaux, saisissez l'adresse e-mail de votre compte utilisateur ou de votre compte de service.
- Dans la liste déroulante Sélectionner un rôle, recherchez et sélectionnez
Storage Admin. - Cliquez sur Enregistrer.
gcloud
Exécutez gcloud storage buckets add-iam-policy-binding :
gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME \
--member="PRINCIPAL" \
--role="roles/storage.admin"Remplacez :
- BUCKET_NAME : nom de votre bucket source, récepteur ou intermédiaire.
- PRINCIPAL : votre compte au format
user:EMAILpour un compte utilisateur ouserviceAccount:SA_EMAILpour un compte de service.
Étapes suivantes
Les étapes suivantes dépendent de la nécessité ou non d'utiliser des agents de transfert :
- Si votre transfert n'utilise pas d'agent (par exemple, les transferts entre des buckets Cloud Storage, d'Amazon S3 vers Cloud Storage ou d'Azure Blob Storage vers Cloud Storage), la configuration de l'accès utilisateur est terminée. Passez à Configurer l'accès à votre source et à votre destination ou Créer un transfert.
- Si votre transfert est basé sur un agent, comme les transferts impliquant des systèmes de fichiers, HDFS ou un stockage compatible S3, passez à la section Autorisations au niveau du projet basées sur un agent.