Pourquoi puis-je supprimer des objets même après avoir activé le verrouillage des objets pour mon compartiment Amazon S3 ?

Lecture de 4 minute(s)
0

J'ai activé le verrouillage des objets pour mon compartiment Amazon Simple Storage Service (Amazon S3). J'ai besoin de savoir pourquoi je peux toujours supprimer certains objets de ce compartiment.

Résolution

Les paramètres de configuration Verrouillage des objets au niveau des objets déterminent si vous pouvez supprimer un objet d'un compartiment Amazon S3 avec le Verrouillage des objets.

Pour déterminer pourquoi vous pouvez toujours supprimer un objet particulier d'un compartiment avec le Verrouillage des objets, vérifiez le paramètre de verrouillage des objets appliqué à l'objet. Vérifiez également le mode de suppression.

Remarque : si vous recevez des erreurs lors de l'exécution des commandes de l'interface de la ligne de commande AWS (AWS CLI), assurez-vous que vous utilisez la version la plus récente de l'AWS CLI.

Vérifiez les paramètres de possession juridique et de conservation du Verrouillage des objets pour cet objet

Pour vérifier ces paramètres, ouvrez la console Amazon S3 et accédez à la page Propriétés de l'objet. Vous pouvez également exécuter la commande head-object de l'AWS CLI :

aws s3api head-object --bucket sample-bucket --key test.png

La sortie ressemble à ce qui suit :

{  
 "AcceptRanges": "bytes",  
 "LastModified": "2023-03-09T04:39:46+00:00",  
 "ContentLength": 285074,  
 "ETag": "\"1e8cd7fb4e4ddeafdc6513200f47958f\"",  
 "VersionId": "Cm_wsGgkj8L3fySNPUu.J7xV1HEKMhGr",  
 "ContentType": "image/png",  
 "ServerSideEncryption": "aws:kms",  
 "Metadata": {},  
 "SSEKMSKeyId": "arn:aws:kms:us-east-1:111111111111:key/eod57e78-8c46-454a-8c22-897d8be9a5f4",  
 "ReplicationStatus": "PENDING",  
 "ObjectLockMode": "COMPLIANCE",  
 "ObjectLockRetainUntilDate": "2023-03-10T04:39:45.913000+00:00",  
 "ObjectLockLegalHoldStatus": "ON"  
}

Si vous avez appliqué une possession juridique à l'objet, les champs ObjectLockLegalHoldStatus apparaissent dans la sortie. Si vous avez appliqué la conservation du Verrouillage des objets sur cet objet, les champs ObjectLockMode et ObjectLockRetainUntilDate s'affichent également.

Vous n'avez pas activé la possession juridique ou la conservation du Verrouillage des objets sur l'objet.

Vous pouvez supprimer définitivement l'objet.

Vous avez activé la possession juridique du Verrouillage des objets sur l'objet

Vous ne pouvez supprimer définitivement l'objet qu'après qu'un utilisateur disposant des autorisations s3:PutObjectLegalHold ait explicitement désactivé la possession juridique sur l'objet.

Vous avez activé la conservation du Verrouillage des objets sur l'objet

Si l'objet est protégé par le mode GOUVERNANCE, vous pouvez le supprimer définitivement dans les conditions suivantes, avant même la fin de la période de conservation :

  • Vous disposez des autorisations s3:BypassGovernanceRetention.
  • Vous avez explicitement inclus x-amz-bypass-governance-retention:true en tant qu'en-tête de requête dans la requête SUPPRESSION.

Par défaut, la console Amazon S3 inclut l'en-tête x-amz-bypass-governance-retention:true dans une requête SUPPRESSION. Par conséquent, si vous disposez des autorisations s3:BypassGovernanceRetention, vous pouvez utiliser la console S3 pour supprimer une version d'objet protégée par le mode GOUVERNANCE.

Avec les autorisations s3:BypassGovernanceRetention, vous pouvez également utiliser l'AWS CLI pour supprimer une version d'objet. Transmettez l'option --bypass-governance-retention dans la commande delete-object :

aws s3api delete-object --bucket sample-bucket --key test.txt --version-id "9_gKg5vG56F.TTEUdwkxGpJ3tNDlWlGq" --bypass-governance-retention

Si l'objet est protégé par le mode CONFORMITÉ, aucun utilisateur, y compris le compte racine, ne peut supprimer définitivement l'objet tant que la période de conservation n'est pas terminée.

Vérifiez le mode de suppression

SUPPRESSION simple

Lors d'une opération de SUPPRESSION simple, vous supprimez un objet sans spécifier l'ID de version de l'objet dans la requête de suppression.

Vous pouvez effectuer une SUPPRESSION simple sur n'importe quel objet se trouvant dans un compartiment avec Verrouillage des objets, quelles que soient les configurations de Verrouillage des objets. La SUPPRESSION simple ne supprime aucune donnée du compartiment. Elle ajoute uniquement un marqueur de suppression au compartiment et conserve la version actuelle comme non actuelle.

SUPPRESSION définitive

Lors d’une opération de SUPPRESSION définitive, vous supprimez un objet en spécifiant l'ID de version de l'objet dans la requête de suppression.

Vous pouvez effectuer une opération de SUPPRESSION définitive sur un objet protégé par le mode de conservation GOUVERNANCE avant même la fin de la période de conservation. Toutefois, vous devez disposer des autorisations nécessaires pour contourner le mode GOUVERNANCE.

Vous ne pouvez pas supprimer définitivement un objet dans l'une ou l'autre des conditions suivantes :

  • L'objet est protégé par le mode de conservation CONFORMITÉ et la période de conservation n'est pas terminée.
  • La possession juridique est appliquée à l'objet.

Supprimer via les règles du cycle de vie S3

Les règles du cycle de vie S3 continuent de procéder à l'expiration des versions actuelles par le biais de simples opérations de SUPPRESSION, quelles que soient les configurations de Verrouillage des objets au niveau de l’objet. Toutefois, ces règles ne suppriment pas définitivement les versions non actuelles si elles sont protégées par le Verrouillage des objets.

Informations connexes

Possessions juridiques

Modes de conservation

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a un an