Перейти к содержимому

Обзор

Блокировка версии объекта (object lock) — механизм, который защищает версию объекта от удаления или перезаписи. Блокировку можно установить на определенный срок либо бессрочно.

Блокировка версии может использоваться в ситуациях, в которых нужно обеспечить неизменяемость данных: соблюдение отраслевых и законодательных требований, реализация политик хранения, юридическое удержание и т.п.

Блокировка версии основана на принципе WORM (Write Once Read Many). Защищенная с помощью блокировки версия не может быть ни удалена, ни изменена, при этом загрузка новых версий объекта никак не ограничивается.

Блокировку можно включить только в бакетах с включенным версионированием. При включении указываются настройки, которые будут применяться ко всем новым объектам.

Также вы можете включить блокировку для конкретной версии любого ранее загруженного объекта.

Блокировка версии объекта (object lock) может быть временной или бессрочной.

Временная блокировка действует до заданной даты и времени. У нее есть два режима:

  • Управляемый (governance mode).

    Блокировку в управляемом режиме может установить пользователь с ролью storage.bucket.admin. Пользователи с другими ролями не могут ни удалить, ни перезаписать заблокированную версию. При этом пользователи с ролью storage.bucket.admin могут:

    • изменить или удалить заблокированную версию;
    • изменить срок блокировки;
    • отменить блокировку.

    Все эти действия нужно явно подтверждать: например, запрос к API на изменение версии должен обязательно включать заголовок Х-Amz-Bypass-Governance-Retention: true.

  • Строгий (compliance mode).

    Блокировку в строгом режиме может установить пользователь с ролью storage.bucket.admin. Обойти или снять ее невозможно, можно только продлить.

Бессрочную блокировку может устанавливать и снимать только пользователь с ролью storage.bucket.admin. После этого версию объекта нельзя ни удалить, ни изменить, пока блокировка не будет снята.

Внимание

Бессрочная блокировка всегда имеет приоритет: если одновременно с ней действует временная блокировка, перезаписать или удалить версию объекта будет невозможно.

Критерий
Блокировка в управляемом режиме (governance mode)Блокировка в строгом режиме (compliance mode)Бессрочная блокировка (legal hold)
Кто может установить блокировку?Пользователь с ролью storage.bucket.adminПользователь с ролью storage.bucket.adminПользователь с ролью storage.bucket.admin
Можно ли удалить или изменить объект?Да (для роли storage.bucket.admin)НетНет
Кто может удалять или изменить объект?Пользователь с ролью storage.bucket.adminНиктоНикто
Можно ли снять блокировку раньше срока?Да (для роли storage.bucket.admin)Нет
Можно ли продлить блокировку?Да (для роли storage.bucket.admin)Да (для роли storage.bucket.admin)
Кто может снять блокировку?Пользователь с ролью storage.bucket.adminНиктоПользователь с ролью storage.bucket.admin