Важно
Блокировки объекта применяются только к отдельным версиям объекта.
https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html
Взгляните на Как просмотреть версии объекта S3? и переключите вид консоли на «показ» версий объекта. Вы должны обнаружить, что вы на самом деле не удалили заблокированную версию объекта.
То, что вы сделали, когда вы «удалили» объект, было создать маркер удаления.
Маркер удаления - это заполнитель (маркер) для версионного объекта, который был назван простым DELETE
запрос. Поскольку объект находился в корзине с поддержкой версий, объект не был удален. Однако маркер удаления заставляет Amazon S3 вести себя так, как если бы он был удален.
https://docs.aws.amazon.com/AmazonS3/latest/dev/DeleteMarker.html
С консолью в «скрытых» версиях В этом режиме запросы на удаление являются «простыми DELETE
запросами», как упомянуто выше.
Когда консоль находится в режиме «показа» версий, вы пытаетесь выполнить операции удаления вместо указанных c версий объекта. и вы обнаружите, что не можете удалить какие-либо версии с блокировкой объекта.
Вы также обнаружите, что вы, очевидно, можете перезаписать объект новой загрузкой, но опять же вы не сможете этого сделать, потому что загрузка объекта с тем же ключом в версионную корзину (и включение контроля версий является обязательной для блокировки объекта) не перезаписывает объект - она просто создает более новую версию объекта, оставляя более старые версии без изменений.
Когда верхняя (самая новая, текущая) версия объекта является маркером удаления, объект исчезает из консоли и не включается в запросы ListObjects отправляется в корзину через API, но появляется в запросах API ListObjectVersions. Параметр «показать / скрыть» применим только к представлению вашей личной консоли, он не меняет фактическое поведение сегмента.
Временные метки версий объекта не могут быть изменены, поэтому блокировка версии объекта не только предотвращает удаление содержимого объекта, он также сохраняет запись о том, когда этот объект был первоначально создан. «Перезапись» объекта создает новую версию с новой отметкой времени, а отметки времени в версиях доказывают, какой контент существовал в корзине в любой данный момент времени.