Créer et gérer des dossiers gérés

Ce guide explique comment créer, lister et supprimer des dossiers gérés.

Avant de commencer

Avant de commencer, assurez-vous de disposer du rôle IAM (Identity and Access Management) requis pour créer et gérer des dossiers gérés, et pour activer l'accès uniforme au niveau du bucket.

Obtenir les rôles requis

Pour obtenir les autorisations nécessaires pour créer et gérer des dossiers gérés, demandez à votre administrateur de vous accorder le rôle IAM Administrateur de dossier Storage (roles/storage.folderAdmin) pour le bucket.

Ce rôle prédéfini contient les autorisations requises pour créer et gérer des dossiers gérés. Pour afficher les autorisations exactes requises, développez la section Autorisations requises :

Autorisations requises

  • storage.managedfolders.create
  • storage.managedfolders.delete
  • storage.managedfolders.get
  • storage.managedfolders.list
  • storage.objects.list
    • Cette autorisation n'est requise que si vous souhaitez valider les dossiers gérés nouvellement créés en les listant.

Vous pouvez également obtenir ces autorisations en utilisant d'autres rôles prédéfinis ou des rôles personnalisés.

Pour en savoir plus sur l'attribution de rôles dans des buckets, consultez la page Utiliser IAM avec des buckets.

Activer l'accès uniforme au niveau du bucket

Si ce n'est pas déjà fait, activez l'accès uniforme au niveau du bucket.

Créer un dossier géré

Console

Lorsque vous utilisez la console Google Cloud, vous créez des dossiers gérés en convertissant les dossiers simulés. Les étapes suivantes décrivent comment créer un dossier simulé et le convertir en dossier géré.

  1. Dans la console Google Cloud, accédez à la page Buckets Cloud Storage.

    Accéder à la page "Buckets"

  2. Dans la liste des buckets, cliquez sur le nom du bucket dans lequel vous souhaitez créer des dossiers gérés.

  3. Sur la page Informations sur le bucket, cliquez sur Créer un dossier pour créer un dossier. Si le dossier que vous souhaitez convertir en dossier géré existe déjà, passez à l'étape décrivant comment accéder au menu Plus d'options .

  4. Dans le champ Nom, saisissez un nom pour votre fichier. Pour plus d'informations sur les noms, consultez la section Noms des dossiers gérés.

  5. Cliquez sur Créer.

    Le dossier que vous venez de créer apparaît dans le volet Navigateur de dossiers.

  6. Dans le volet Navigateur de dossiers, cliquez sur le menu Plus d'options à côté du dossier que vous souhaitez convertir en dossier géré, puis cliquez sur Modifier les autorisations.

    La boîte de dialogue Créer un dossier géré s'affiche.

  7. Cliquez sur Associer un dossier géré.

    Votre dossier est converti en dossier géré. Un volet Autorisations pour MANAGED_FOLDER_NAME contenant les stratégies IAM du dossier par compte principal et par rôle s'affiche. Pour créer des stratégies IAM, consultez la page Définir une stratégie IAM sur un dossier géré.

Ligne de commande

Pour créer un dossier géré, exécutez la commande gcloud storage managed-folders create :

gcloud storage managed-folders create gs://BUCKET_NAME/MANAGED_FOLDER_NAME

Où :

  • BUCKET_NAME correspond au nom du bucket dans lequel vous souhaitez créer un dossier géré. Par exemple, my-bucket.

  • MANAGED_FOLDER_NAME correspond au nom du dossier géré que vous souhaitez créer. Par exemple, my-managed-folder/.

Pour vérifier que le dossier géré a bien été créé, exécutez la commande gcloud storage managed-folders describe :

gcloud storage managed-folders describe gs://BUCKET_NAME/MANAGED_FOLDER_NAME

Où :

  • BUCKET_NAME correspond au nom du bucket dans lequel vous avez créé un dossier géré.

  • MANAGED_FOLDER_NAME correspond au nom du dossier géré que vous avez créé.

API REST

API JSON

  1. Vous devez installer et initialiser gcloud CLI afin de générer un jeton d'accès pour l'en-tête Authorization.

    Vous pouvez également créer un jeton d'accès à l'aide d'OAuth 2.0 Playground et l'inclure dans l'en-tête Authorization.

  2. Utilisez cURL pour appeler l'API JSON avec une requête POST ManagedFolder :

    curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -d '{ "name": "MANAGED_FOLDER_NAME" }' \
      "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/managedFolders"

    Où :

    • BUCKET_NAME correspond au nom du bucket dans lequel vous souhaitez créer un dossier géré. Exemple : my-bucket.

    • MANAGED_FOLDER_NAME correspond au nom du dossier géré que vous souhaitez créer. Exemple : my-managed-folder/.

Lister les dossiers gérés

Console

  1. Dans la console Google Cloud, accédez à la page Buckets Cloud Storage.

    Accéder à la page "Buckets"

  2. Dans le volet Navigateur de dossiers, utilisez le nœud d'activation pour développer la liste des dossiers dans votre bucket.

Une liste affiche les dossiers simulés et gérés dans votre bucket.

Ligne de commande

Pour lister les dossiers gérés, exécutez la commande gcloud storage managed-folders list :

gcloud storage managed-folders list gs://BUCKET_NAME

Où :

  • BUCKET_NAME correspond au nom du bucket contenant les dossiers gérés que vous souhaitez lister. Par exemple, my-bucket.

Notez que vous pouvez également spécifier un chemin d'accès au dossier au lieu d'un nom de bucket. Par exemple :

gcloud storage managed-folders list gs://my-bucket/folder/

API REST

API JSON

  1. Vous devez installer et initialiser gcloud CLI afin de générer un jeton d'accès pour l'en-tête Authorization.

    Vous pouvez également créer un jeton d'accès à l'aide d'OAuth 2.0 Playground et l'inclure dans l'en-tête Authorization.

  2. Utilisez cURL pour appeler l'API JSON avec une requête permettant de répertorier les dossiers gérés:

    curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/managedFolders"

    BUCKET_NAME correspond au nom du bucket contenant les dossiers gérés que vous souhaitez lister. Exemple : my-bucket.

Déplacer un dossier géré

Console

  1. Créez un nouveau dossier géré dans le bucket de destination.

  2. Copiez les stratégies IAM du dossier géré d'origine dans le bucket source vers le nouveau dossier géré dans le bucket de destination.

  3. Copiez les objets du dossier géré d'origine dans le bucket source vers le nouveau dossier géré dans le bucket de destination.

  4. Supprimez le dossier géré d'origine du bucket source.

Ligne de commande

Pour déplacer des dossiers gérés et les objets qu'ils contiennent, exécutez la commande gcloud storage mv avec l'option --include-managed-folders :

gcloud storage mv --include-managed-folders gs://SOURCE_BUCKET_NAME/MANAGED_FOLDER_NAME gs://DESTINATION_BUCKET_NAME/MANAGED_FOLDER_NAME

Où :

  • SOURCE_BUCKET correspond au nom du bucket d'origine. Par exemple, my-source-bucket.

  • DESTINATION_BUCKET correspond au nom du bucket vers lequel vous déplacez votre dossier géré. Exemple : my-destination-bucket.

  • MANAGED_FOLDER_NAME correspond au nom du dossier géré que vous déplacez. Par exemple, my-managed-folder/.

API REST

API JSON

Pour déplacer des dossiers gérés d'un bucket à un autre, procédez comme suit :

  1. Créez un nouveau dossier géré dans le bucket de destination.

  2. Copiez les stratégies IAM du dossier géré d'origine dans le bucket source vers le nouveau dossier géré dans le bucket de destination.

  3. Copiez les objets du dossier géré d'origine dans le bucket source vers le nouveau dossier géré dans le bucket de destination.

  4. Supprimez le dossier géré d'origine du bucket source.

Supprimer un dossier géré

Console

  1. Dans la console Google Cloud, accédez à la page Buckets Cloud Storage.

    Accéder à la page "Buckets"

  2. Sur la page Informations sur le bucket, cliquez sur l'icône Plus d'options située à côté du dossier géré que vous souhaitez supprimer.

  3. Cliquez sur Supprimer le dossier.

  4. Pour confirmer que vous souhaitez supprimer le dossier géré, saisissez DELETE dans le champ Supprimer.

  5. Cliquez sur Supprimer.

    Le dossier géré et son contenu (y compris les objets stockés et les autres dossiers gérés), sont supprimés de votre bucket Cloud Storage.

Ligne de commande

Pour supprimer un dossier géré et les objets qu'il contient, exécutez la commande gcloud storage rm :

gcloud storage rm -r gs://BUCKET_NAME/MANAGED_FOLDER_NAME

Où :

  • BUCKET_NAME correspond au nom du bucket contenant le dossier géré que vous souhaitez supprimer. Par exemple, my-bucket.

  • MANAGED_FOLDER_NAME correspond au nom du dossier géré que vous souhaitez supprimer. Par exemple, my-managed-folder/.

API REST

API JSON

Pour supprimer un dossier géré, vous devez d'abord supprimer les objets dans le dossier géré.

  1. Vous devez installer et initialiser gcloud CLI afin de générer un jeton d'accès pour l'en-tête Authorization.

    Vous pouvez également créer un jeton d'accès à l'aide d'OAuth 2.0 Playground et l'inclure dans l'en-tête Authorization.

  2. Utilisez cURL pour appeler l'API JSON avec une requête DELETE ManagedFolder :

    curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/managedFolders/MANAGED_FOLDER_NAME"

    Où :

    • BUCKET_NAME correspond au nom du bucket contenant le dossier géré que vous souhaitez supprimer. Exemple : my-bucket.

    • MANAGED_FOLDER_NAME correspond au nom du dossier géré que vous souhaitez supprimer. Exemple :my-managed-folder/

    Par défaut, les dossiers gérés doivent être vides pour pouvoir être supprimés. Pour supprimer un dossier géré non vide, incluez allowNonEmpty=true en tant que paramètre de requête dans votre requête.

Dépannage

Pour obtenir de l'aide sur la création et la gestion des dossiers gérés, consultez la page Dépannage.

Étapes suivantes