Transférer des buckets avec espace de noms hiérarchique Cloud Storage

L'espace de noms hiérarchique Cloud Storage stocke les données dans une structure de système de fichiers logique, en utilisant des dossiers pour organiser les objets. Pour en savoir plus, consultez la section Espace de noms hiérarchique.

Le service de transfert de stockage peut effectuer des transferts vers et depuis des buckets Cloud Storage qui utilisent un espace de noms hiérarchique. Pour transférer correctement les dossiers et les métadonnées de dossier, des autorisations supplémentaires doivent être accordées à l'agent de service du service de transfert de stockage.

Autorisations requises

En plus des autorisations standards requises pour un transfert, l'agent de service du service de transfert de stockage doit disposer des autorisations IAM suivantes.

Lorsque la source est un bucket avec espace de noms hiérarchique:

  • storage.folders.list sur le bucket source Cette autorisation est incluse dans le rôle "Lecteur des objets de l'espace de stockage" (roles/storage.objectViewer), qui est obligatoire pour tous les transferts. Aucun rôle supplémentaire n'est requis.

Lorsque la destination est un bucket avec espace de noms hiérarchique:

  • storage.folders.create sur le bucket de destination Cette autorisation est incluse dans le rôle "Utilisateur des objets Storage" (roles/storage.objectUser). Accordez ce rôle en plus des rôles listés dans la section Autorisations de transfert sans agent.

Pour savoir comment ajouter des rôles à l'agent de service, consultez les articles suivants:

Comportement de transfert

Lors d'un transfert entre deux buckets avec espace de noms hiérarchique:

  • Les objets et les métadonnées des objets sont transférés.
  • Les dossiers et leurs métadonnées sont transférés.
  • La suppression de dossiers à la source ou au récepteur n'est pas possible.

Lors du transfert d'un bucket avec espace de noms hiérarchique vers un bucket avec espace de noms unique:

  • Les objets et les métadonnées des objets sont transférés.
  • Les dossiers sont transférés en tant que préfixes d'objets. Par exemple, object1 dans folderA est transféré à la destination en tant que folderA/object1.
  • Les métadonnées des dossiers ne sont pas transférées.
  • La suppression de dossiers à la source n'est pas possible.

Lorsque vous transférez des données d'un bucket avec espace de noms plat vers un bucket avec espace de noms hiérarchique:

  • Les objets et les métadonnées des objets sont transférés.
  • Les préfixes d'objet permettent de créer les dossiers manquants. Par exemple, lors du transfert de folderA/object1, le service de transfert de stockage crée un dossier nommé folderA et transfère object1 dans ce dossier.
  • La suppression de dossiers au niveau du récepteur n'est pas prise en charge.