Object Lock
Object Lock работает по принципу WORM (Write Once Read Many) и позволяет заблокировать объекты, чтобы предотвратить их перезапись или удаление.
Для использования Object Lock в бакете должно быть включено версионирование. Блокировка объектов применяется только к версиям объектов.
Блокировка может быть разных типов и режимов. В зависимости от типа блокировки ее можно установить на отдельные объекты или на бакет по умолчанию — блокировка будет применяться к новым объектам.
Возможность управления блокировкой также зависит от роли пользователя и правил политики доступа, подробнее в инструкции Управлять доступом в S3. Работать с Object Lock можно в панели управления (возможности ограничены), через S3 API и инструменты, которые его используют — например, AWS CLI.
Чтобы управлять блокировкой объектов после настройки Object Lock, используйте инструкцию Управлять блокировкой объекта.
Если вы удалите проект, в котором есть заблокированные объекты, они не будут удалены, пока блокировка активна. При этом они не будут отображаться в панели управления и через API. Чтобы восстановить заблокированные объекты после удаления проекта, создайте тикет.
Типы и режимы блокировки
Блокировка может быть временной и бессрочной. У временной блокировки есть два режима — Governance и Compliance.
Если у объекта одновременно включены временная и бессрочная блокировки, приоритет имеет бессрочная блокировка.
* Доступно только пользователям:
- с ролью
member; - с другими ролями с доступом в S3, если в бакете есть политика доступа, которая разрешает действие
s3:BypassGovernance.
Включить Object Lock в бакете
Включить Object Lock могут:
- Владелец аккаунта;
- пользователи с ролями
member,s3.adminиobject_storage:admin; - пользователи с ролями
s3.bucket.user,s3.userиobject_storage_userесли политика доступа разрешает им действиеs3:PutBucketObjectLockConfiguration.
Если вы включили Object Lock, его нельзя отключить и нельзя приостановить версионирование.
Включение Object Lock не блокирует объекты автоматически. После настройки Object Lock в бакете вы сможете:
- управлять блокировкой объектов;
- загружать объекты сразу с активной блокировкой (только через S3 API и инструменты, которые его используют);
- управлять временной блокировкой по умолчанию в бакете.
Панель управления
AWS CLI
Если в бакете отключено или приостановлено версионирование, оно будет включено автоматически при включении Object Lock.
-
В панели управления в верхнем меню нажмите Продукты и выберите S3.
-
Перейдите в раздел Бакеты.
-
Откройте страницу бакета → вкладка Конфигурация.
-
В блоке Защита данных в строке Object Lock нажмите Изменить.
-
Отметьте чекбокс Включить Object Lock.
-
Опционально: включите временную блокировку по умолчанию в бакете:
6.1. Отметьте чекбокс Включить блокировку по умолчанию.
6.2. Выберите режим блокировки.
6.3. Укажите срок блокировки.
Вы сможете управлять временной блокировкой по умолчанию и после включения Object Lock.
-
Нажмите Сохранить.
Управлять временной блокировкой по умолчанию в бакете
Управлять временной блокировкой по умолчанию могут:
- Владелец аккаунта;
- пользователи с ролями
member,s3.adminиobject_storage:admin; - пользователи с ролями
s3.bucket.user,s3.userиobject_storage_user, если политика доступа разрешает им соответствующие действия.
Включить временную блокировку по умолчанию
Временная блокировка будет применяться ко всем новым объектам в бакете.
Панель управления
AWS CLI
- В панели управления в верхнем меню нажмите Продукты и выберите S3.
- Перейдите в раздел Бакеты.
- Откройте страницу бакета → вкладка Конфигурация.
- В блоке Защита данных в строке Object Lock нажмите Изменить.
- Убедитесь, что у вас отмечен чекбокс Включить Object Lock.
- Отметьте чекбокс Включить блокировку по умолчанию.
- Выберите режим блокировки.
- Укажите срок блокировки.
- Нажмите Сохранить.
Изменить срок временной блокировки по умолчанию
Если установлен режим блокировки:
- Governance — срок блокировки можно сократить или продлить;
- Compliance — срок блокировки можно только продлить.
Панель управления
AWS CLI
- В панели управления в верхнем меню нажмите Продукты и выберите S3.
- Перейдите в раздел Бакеты.
- Откройте страницу бакета → вкладка Конфигурация.
- В блоке Защита данных в строке Object Lock нажмите Изменить.
- Укажите новый срок блокировки.
- Нажмите Сохранить.
Изменить режим временной блокировки по умолчанию
Можно только изменить режим блокировки Governance на Compliance.
Панель управления
AWS CLI
- В панели управления в верхнем меню нажмите Продукты и выберите S3.
- Перейдите в раздел Бакеты.
- Откройте страницу бакета → вкладка Конфигурация.
- В блоке Защита данных в строке Object Lock нажмите Изменить.
- Выберите режим блокировки Compliance.
- Укажите срок блокировки.
- Нажмите Сохранить.
Отключить временную блокировку по умолчанию
Можно отключить только временную блокировку в режиме Governance.
При отключении временной блокировки новые объекты не будут блокироваться. Объекты, которые были загружены и автоматически заблокированы до отключения временной блокировки по умолчанию, останутся заблокированными в соответствии с режимом блокировки. Сам Object Lock в бакете не будет отключен.
Панель управления
AWS CLI
Отключить временную блокировку в панели управления может только Владелец аккаунта или пользователь с ролью member.
- В панели управления в верхнем меню нажмите Продукты и выберите S3.
- Перейдите в раздел Бакеты.
- Откройте страницу бакета → вкладка Конфигурация.
- В блоке Защита данных в строке Object Lock нажмите Изменить.
- Снимите чекбокс Включить блокировку по умолчанию.
- Нажмите Сохранить.