Cette page explique comment utiliser l'obligation de conservation d'un objet, en particulier la conservation par défaut des nouveaux objets et le placement d'obligations de conservations sur des objets spécifiques.
Autorisations requises
Avant d'utiliser cette fonctionnalité dans Cloud Storage, vous devez disposer des autorisations suffisantes pour afficher et mettre à jour les buckets et les objets dans Cloud Storage :
Si vous êtes propriétaire du projet contenant le bucket, vous disposez probablement des autorisations nécessaires.
Si vous utilisez IAM, vous devez disposer des autorisations
storage.buckets.update,storage.buckets.get,storage.objects.updateetstorage.objects.getsur le bucket concerné. Consultez Utiliser les autorisations Cloud IAM pour savoir comment obtenir un rôle doté de ces autorisations, tel qu'Administrateur de l'espace de stockage.Si vous utilisez des listes de contrôle d'accès (LCA), vous devez disposer de l'autorisation OWNER (propriétaire) sur le bucket et les objets qu'il contient. Pour savoir comment procéder, consultez Configurer des LCA.
Utiliser la propriété d'obligation de conservation basée sur des événements activée par défaut
Les tâches suivantes expliquent comment définir et afficher la propriété d'obligation de conservation basée sur des événements activée par défaut sur un bucket. Lorsque cette propriété est activée, une obligation de conservation basée sur des événements est automatiquement placée sur tout nouvel objet ajouté au bucket.
Paramétrer la propriété d'obligation de conservation basée sur des événements activée par défaut
Pour activer ou désactiver la propriété d'obligation de conservation basée sur des événements activée par défaut sur un bucket, procédez comme suit :
Console
- Dans la console Google Cloud , accédez à la page Buckets de Cloud Storage.
Dans la liste des buckets, cliquez sur le nom du bucket pour lequel vous souhaitez paramétrer par défaut la propriété d'obligation de conservation basée sur des événements.
Sélectionnez l'onglet Protection en haut de la page.
L'état actuel du bucket s'affiche dans la section Option d'obligation de conservation basée sur des événements activée par défaut.
Dans la section Option d'obligation de conservation basée sur des événements activée par défaut, cliquez sur l'état actuel pour le modifier.
L'état indique Activé ou Désactivé.
Pour savoir comment obtenir des informations détaillées sur les erreurs liées à l'échec des opérations Cloud Storage dans la console Google Cloud , consultez Dépannage.
Ligne de commande
Exécutez la commande gcloud storage buckets update avec le flag approprié :
gcloud storage buckets update gs://BUCKET_NAME FLAG
Où :
BUCKET_NAMEcorrespond au nom du bucket concerné. Par exemple,my-bucket.FLAGcorrespond soit à--default-event-based-holdpour activer les obligations de conservation d'objets basées sur des événements par défaut, soit à--no-default-event-based-holdpour les désactiver.
Bibliothèques clientes
C++
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage C++.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant active les obligations de conservation basées sur des événements activées par défaut sur un bucket :
L'exemple suivant désactive les obligations de conservation basées sur des événements activées par défaut sur un bucket :
C#
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage C#.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant active les obligations de conservation basées sur des événements activées par défaut sur un bucket :
L'exemple suivant désactive les obligations de conservation basées sur des événements activées par défaut sur un bucket :
Go
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage Go.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant active les obligations de conservation basées sur des événements activées par défaut sur un bucket :
L'exemple suivant désactive les obligations de conservation basées sur des événements activées par défaut sur un bucket :
Java
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage Java.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant active les obligations de conservation basées sur des événements activées par défaut sur un bucket :
L'exemple suivant désactive les obligations de conservation basées sur des événements activées par défaut sur un bucket :
Node.js
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage Node.js.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant active les obligations de conservation basées sur des événements activées par défaut sur un bucket :
L'exemple suivant désactive les obligations de conservation basées sur des événements activées par défaut sur un bucket :
PHP
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage PHP.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant active les obligations de conservation basées sur des événements activées par défaut sur un bucket :
L'exemple suivant désactive les obligations de conservation basées sur des événements activées par défaut sur un bucket :
Python
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage Python.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant active les obligations de conservation basées sur des événements activées par défaut sur un bucket :
L'exemple suivant désactive les obligations de conservation basées sur des événements activées par défaut sur un bucket :
Ruby
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage Ruby.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant active les obligations de conservation basées sur des événements activées par défaut sur un bucket :
L'exemple suivant désactive les obligations de conservation basées sur des événements activées par défaut sur un bucket :
API REST
API JSON
Vous devez installer et initialiser gcloud CLI afin de générer un jeton d'accès pour l'en-tête
Authorization.Créez un fichier JSON contenant les informations suivantes :
{ "defaultEventBasedHold": STATE }
où STATE est
trueoufalse.Utilisez
cURLpour appeler l'API JSON avec une requête de bucketPATCH:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=defaultEventBasedHold"
Où :
JSON_FILE_NAMEcorrespond au chemin d'accès au fichier que vous avez créé à l'étape 2.BUCKET_NAMEcorrespond au nom du bucket concerné. Exemple :my-bucket.
API XML
L'API XML ne peut pas être utilisée pour gérer les obligations de conservation d'objets. Utilisez plutôt un autre outil Cloud Storage, tel que gcloud CLI.
Obtenir l'état d'obligation de conservation par défaut d'un bucket
Pour savoir si un bucket place par défaut une obligation de conservation basée sur des événements sur les nouveaux objets, procédez comme suit :
Console
- Dans la console Google Cloud , accédez à la page Buckets de Cloud Storage.
Dans la liste des buckets, cliquez sur le nom du bucket pour lequel vous souhaitez vérifier l'état par défaut basé sur des événements.
Sélectionnez l'onglet Protection en haut de la page.
L'état s'affiche dans la section Option d'obligation de conservation basée sur des événements par défaut.
Pour savoir comment obtenir des informations détaillées sur les erreurs liées à l'échec des opérations Cloud Storage dans la console Google Cloud , consultez Dépannage.
Ligne de commande
Exécutez la commande gcloud storage buckets describe avec le flag --format :
gcloud storage buckets describe gs://BUCKET_NAME --format="default(default_event_based_hold)"
Où BUCKET_NAME correspond au nom du bucket dont vous souhaitez afficher l'état. Par exemple, my-bucket.
Si l'opération réussit, la réponse se présente comme suit :
default_event_based_hold: true
Bibliothèques clientes
C++
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage C++.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
C#
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage C#.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
Go
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage Go.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
Java
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage Java.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
Node.js
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage Node.js.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
PHP
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage PHP.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
Python
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage Python.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
Ruby
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage Ruby.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
API REST
API JSON
Vous devez installer et initialiser gcloud CLI afin de générer un jeton d'accès pour l'en-tête
Authorization.Utilisez
cURLpour appeler l'API JSON avec une requête de bucketGETincluant lesfields(champs) souhaités :curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=defaultEventBasedHold"
Où
BUCKET_NAMEest le nom du bucket concerné. Par exemple,my-bucket.Si la préservation à titre conservatoire basée sur des événements est activée par défaut sur le bucket, la réponse est semblable à ceci :
{ "defaultEventBasedHold": true }
API XML
L'API XML ne peut pas être utilisée pour gérer les obligations de conservation d'objets. Utilisez plutôt un autre outil Cloud Storage, tel que gcloud CLI.
Gérer les obligations de conservation d'objets individuels
Les tâches suivantes expliquent comment modifier et afficher les obligations de conservation sur des objets individuels.
Placer ou lever une obligation de conservation d'un objet
Pour placer ou lever une obligation de conservation sur un objet du bucket, procédez comme suit :
Console
- Dans la console Google Cloud , accédez à la page Buckets de Cloud Storage.
Dans la liste des buckets, cliquez sur le nom du bucket contenant les objets sur lesquels vous souhaitez placer ou lever une obligation de conservation.
Cochez la case en regard du nom des objets sur lesquels vous souhaitez placer ou lever une obligation de conservation.
Cliquez sur le bouton Gérer les obligations de conservation.
La fenêtre Gérer les obligations de conservation apparaît.
Cochez les cases correspondant à chaque type d'obligation de conservation selon vos besoins.
Cliquez sur Enregistrer les paramètres d'obligation de conservation.
Pour savoir comment obtenir des informations détaillées sur les erreurs liées à l'échec des opérations Cloud Storage dans la console Google Cloud , consultez Dépannage.
Ligne de commande
Exécutez la commande gcloud storage objects update avec le flag approprié :
gcloud storage objects update gs://BUCKET_NAME/OBJECT_NAME FLAG
Où :
BUCKET_NAMEcorrespond au nom du bucket concerné. Exemple :my-bucketOBJECT_NAMEcorrespond au nom de l'objet concerné. Par exemple,pets/dog.png.FLAGest l'un des éléments suivants :--event-based-holdpour activer une obligation de conservation basée sur des événements sur l'objet.--no-event-based-holdpour désactiver toute obligation de conservation basée sur des événements sur l'objet.--temporary-holdpour activer une obligation de conservation temporaire sur l'objet.--no-temporary-holdpour désactiver toute obligation de conservation temporaire sur l'objet.
Pour plus d'informations sur les types d'obligation de conservation, consultez Obligations de conservation d'objets.
Bibliothèques clientes
C++
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage C++.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant place une obligation de conservation basée sur des événements sur un objet :
L'exemple suivant lève une obligation de conservation basée sur des événements placée sur un objet :
L'exemple suivant place une obligation de conservation temporaire sur un objet :
L'exemple suivant lève une obligation de conservation temporaire placée sur un objet :
C#
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage C#.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant place une obligation de conservation basée sur des événements sur un objet :
L'exemple suivant lève une obligation de conservation basée sur des événements placée sur un objet :
L'exemple suivant place une obligation de conservation temporaire sur un objet :
L'exemple suivant lève une obligation de conservation temporaire placée sur un objet :
Go
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage Go.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant place une obligation de conservation basée sur des événements sur un objet :
L'exemple suivant lève une obligation de conservation basée sur des événements placée sur un objet :
L'exemple suivant place une obligation de conservation temporaire sur un objet :
L'exemple suivant lève une obligation de conservation temporaire placée sur un objet :
Java
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage Java.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant place une obligation de conservation basée sur des événements sur un objet :
L'exemple suivant lève une obligation de conservation basée sur des événements placée sur un objet :
L'exemple suivant place une obligation de conservation temporaire sur un objet :
L'exemple suivant lève une obligation de conservation temporaire placée sur un objet :
Node.js
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage Node.js.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant place une obligation de conservation basée sur des événements sur un objet :
L'exemple suivant lève une obligation de conservation basée sur des événements placée sur un objet :
L'exemple suivant place une obligation de conservation temporaire sur un objet :
L'exemple suivant lève une obligation de conservation temporaire placée sur un objet :
PHP
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage PHP.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant place une obligation de conservation basée sur des événements sur un objet :
L'exemple suivant lève une obligation de conservation basée sur des événements placée sur un objet :
L'exemple suivant place une obligation de conservation temporaire sur un objet :
L'exemple suivant lève une obligation de conservation temporaire placée sur un objet :
Python
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage Python.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant place une obligation de conservation basée sur des événements sur un objet :
L'exemple suivant lève une obligation de conservation basée sur des événements placée sur un objet :
L'exemple suivant place une obligation de conservation temporaire sur un objet :
L'exemple suivant lève une obligation de conservation temporaire placée sur un objet :
Ruby
Pour en savoir plus, consultez la documentation de référence de Cloud Storage en langage Ruby.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant place une obligation de conservation basée sur des événements sur un objet :
L'exemple suivant lève une obligation de conservation basée sur des événements placée sur un objet :
L'exemple suivant place une obligation de conservation temporaire sur un objet :
L'exemple suivant lève une obligation de conservation temporaire placée sur un objet :
API REST
API JSON
Vous devez installer et initialiser gcloud CLI afin de générer un jeton d'accès pour l'en-tête
Authorization.Créez un fichier JSON contenant les informations suivantes :
{ "HOLD_TYPE": STATE }
Où :
HOLD_TYPEcorrespond au type d'obligation de conservation que vous voulez définir ou lever sur votre objet. Par exemple,temporaryHoldoueventBasedHold. Pour plus d'informations sur les types d'obligation de conservation, consultez Obligations de conservation d'objets.STATEesttruepour placer l'obligation de conservation oufalsepour la lever.
Utilisez
cURLpour appeler l'API JSON avec une requête d'objetPATCH:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME"
Où :
JSON_FILE_NAMEcorrespond au chemin d'accès au fichier que vous avez créé à l'étape 2.BUCKET_NAMEcorrespond au nom du bucket concerné. Par exemple,my-bucket.OBJECT_NAMEcorrespond au nom encodé au format URL de l'objet concerné. Par exemple,pets/dog.png, encodé au format URL sous la formepets%2Fdog.png.
API XML
L'API XML ne peut pas être utilisée pour gérer les obligations de conservation d'objets. Utilisez plutôt un autre outil Cloud Storage, tel que gcloud CLI.
Obtenir l'état de conservation d'un objet
Pour consulter les obligations de conservation existant éventuellement sur un objet, suivez les instructions générales fournies pour afficher les métadonnées d'objet.
Étapes suivantes
- Découvrez-en plus sur les obligations de conservation d'objets, en particulier sur les différents types d'obligations de conservation pouvant être placées sur un objet.
- Apprenez à utiliser les règles de conservation.
- Découvrez comment utiliser les préconditions de requête pour éviter les conditions de concurrence.