Configurer un Object Lock spécifique sur un object

Vous pouvez appliquer des Object Locks spécifiques à des objets spécifiques dans un bucket dans lequel Object Lock est activé.

Configurer un Object Lock spécifique sur un object avec AWS CLI (s3api)

Verrouiller un objet avec des paramètres de rétention

Avant de commencer :

Pour verrouiller un objet avec des paramètres de rétention, utilisez la commande put-object-retention en suivant cette syntaxe :

Exemple de requête
aws s3api put-object-retention \
    --profile YOUR_PROFILE \
    --bucket BUCKET \
    --key integer \
    --retention '{ "Mode": "string", "RetainUntilDate": "date"}' \
    --endpoint https://oos.eu-west-2.outscale.com

Cette commande contient les attributs suivants que vous devez spécifier :

  • (optionnel) profile : Le profil nommé que vous voulez utiliser, créé pendant la configuration d’AWS CLI. Pour en savoir plus, voir Installer et configurer AWS CLI.

  • bucket : Le nom du bucket où se trouve l’objet que vous voulez verrouiller.

  • key : Le nom de l’objet que vous voulez verrouiller.

  • retention : La règle de rétention de l’objet que vous voulez verrouiller.

    Vous pouvez également paramétrer ce fichier en fichier JSON en utilisant le format file://path/to/configuration/file.

    • Mode : Le mode de rétention pour le bucket. La valeur est toujours COMPLIANCE, ce qui empêche tout utilisateur, y compris l’utilisateur root, de supprimer ou modifier des objets dans le bucket jusqu’à expiration de la période de rétention.

      OUTSCALE Object Storage ne prend actuellement pas en charge le mode GOVERNANCE.

    • RetainUntilDate : La date, au format ISO 8601, jusqu’à laquelle l’objet sera verrouillé. Par exemple, si la valeur est 2050-01-01T00:00:00Z, l’objet restera verrouillé jusqu’au tout début du 1er janvier 2050, à minuit UTC.

      Gardez à l’esprit qu’en mode COMPLIANCE :

      • Vous ne pouvez pas contourner la période de rétention jusqu’à son expiration. Cela signifie que vous serez facturé pour la totalité de la période de rétention définie.

      • La période de rétention de l’objet ne peut pas être antérieure à celle définie par défaut sur le bucket.

  • endpoint : Le endpoint correspondant à la Région à laquelle vous voulez envoyer la requête.

Votre objet est verrouillé selon les paramètres que vous avez configurés.

Étant donné que le versioning est automatiquement activé sur un bucket avec Object Lock activé, la suppression d’un objet verrouillé ne fait que créer un delete marker.

En effet, le versioning garantit que chacune des versions d’un objet est préservée, tandis qu’Object Lock se charge d’empêcher certaines versions d’être modifiées ou supprimées.

Cela signifie que lorsqu’une opération de suppression est tentée sur un objet verrouillé, l’objet reste en réalité stocké et protégé, et ce même si le delete marker donne l’impression que l’objet a été supprimé. Notez également qu’un delete marker ne peut pas être protégé par un WORM et peut donc être supprimé.

Obtenir des informations sur les paramètres de rétention d’un objet

Pour obtenir des informations sur les paramètres de rétention d’un objet, utilisez la commande get-object-retention en suivant cette syntaxe :

Exemple de requête
aws s3api get-object-retention \
    --profile YOUR_PROFILE \
    --bucket BUCKET \
    --version-id integer \
    --key integer \
    --endpoint https://oos.eu-west-2.outscale.com

Cette commande contient les attributs suivants que vous devez spécifier :

  • (optionnel) profile : Le profil nommé que vous voulez utiliser, créé pendant la configuration d’AWS CLI. Pour en savoir plus, voir Installer et configurer AWS CLI.

  • bucket : Le nom du bucket dans lequel se trouve l’objet que vous avez verrouillé.

  • version-id : L’ID de la version de l’objet dont vous souhaitez récupérer les paramètres de rétention.

  • key : Le nom de l’objet que vous avez verrouillé.

  • endpoint : Le endpoint correspondant à la Région à laquelle vous voulez envoyer la requête.

La commande get-object-retention renvoie les éléments suivants :

Exemple de résultat
{
    "Retention": {
        "Mode": "integer",
        "RetainUntilDate": "date"
    }
}
  • Retention : La règle de rétention appliquée à votre objet.

    • Mode : Le mode de rétention pour le bucket. La valeur est toujours COMPLIANCE, ce qui empêche tout utilisateur, y compris l’utilisateur root, de supprimer ou modifier des objets dans le bucket jusqu’à expiration de la période de rétention.

      OUTSCALE Object Storage ne prend actuellement pas en charge le mode GOVERNANCE.

    • RetainUntilDate : La date, au format ISO 8601, jusqu’à laquelle l’objet sera verrouillé. Par exemple, si la valeur est 2050-01-01T00:00:00Z, l’objet restera verrouillé jusqu’au tout début du 1er janvier 2050, à minuit UTC.

Pages connexes

AWS™ et Amazon Web Services™ sont des marques de commerce d’Amazon Technologies, Inc. ou de ses affiliées aux États-Unis et/ou dans les autres pays.