Количество кибератак, направленных на облачные и гибридные сервисы в России, за первые 8 месяцев 2025 года превысило суммарный показатель за 2023 и 2024 годы и достигло отметки в 105 млн инцидентов. В условиях подобных вызовов востребованной стратегией для бизнеса становится использование всех доступных мер защиты инфраструктуры и данных, в первую очередь критически значимых, например финансовых отчетов и юридических документов. 

Рассказываем и показываем, как обеспечить максимальный уровень защиты данных в объектном хранилище S3 на примере Object Storage от VK Cloud.

Начнем с азов: что такое Object Lock

Object Lock — функция объектного хранилища, которая позволяет пользователям защищать данные от удаления или изменения, следуя принципу «Write Once, Read Many» (WORM) — «Записать один раз, читать много раз».

Когда функция Object Lock активирована, объекты в хранилище блокируются для удаления или изменения на определенный период. Это значит, что даже администратор системы не имеет права удалить или модифицировать объект до окончания установленного срока защиты.

Таким образом, Object Lock решает несколько ключевых бизнес-задач в части ИБ:

  • Повышает устойчивость к киберугрозам. В условиях роста атак программ-вымогателей, которые шифруют или полностью уничтожают данные, неизменяемые резервные копии становятся последним рубежом обороны. Они обеспечивают гарантированную точку восстановления из чистого, нескомпрометированного состояния.

  • Гарантирует целостность данных и защиту от ошибок. Неизменяемость защищает критически важную информацию от случайного удаления или повреждения, вызванного человеческим фактором или программными сбоями.

  • Упрощает соблюдение нормативных требований. Многие отрасли подчиняются строгим законодательным нормам, требующим хранения данных в неизменяемом виде в течение установленных сроков. Object Lock позволяет выполнять это требование.

Режимы блокировки и механизмы применения Object Lock

Object Lock по умолчанию позволяет применять несколько механизмов блокировки:

  • Бессрочная блокировка (Legal Hold). Это механизм защиты объектов в объектном хранилище S3, который действует не по времени, а по событию. В отличие от временной блокировки (Retention Period), бессрочная не имеет заранее определенного срока окончания и действует до тех пор, пока ее явным образом не снимут уполномоченные пользователи. По сути, Legal Hold является «тумблером», который либо включен, либо выключен для объекта, а его состояние не зависит от времени и управляется вручную или через API.

Подобный механизм рационально применять в ситуациях с неопределенным сроком хранения данных. Например, для защиты данных на время судебных разбирательств или внутренних аудитов. При этом, как только процессы будут завершены, блокировку можно снять. 

  • Временная блокировка (Retention Period). Это блокировка на заданный промежуток времени. Так, для объекта указывается срок удержания (например, 3 года или 1095 дней) и в течение этого периода объект остается заблокированным. При этом срок назначается каждому объекту индивидуально в момент его загрузки в бакет (или позже) и отсчитывается от даты создания объекта. Также поддерживается возможность установки Object Lock по умолчанию для новых объектов (PutObjectLockConfiguration (new)). 

После истечения срока блокировка автоматически снимается, и объект можно будет удалить.

В свою очередь, есть несколько режимов временной блокировки:

  • Режим Governance (управляемый). Предназначен для сценариев, где требуется защита данных, но с сохранением возможности административного вмешательства. В этом режиме пользователи не могут изменять или удалять заблокированные объекты до истечения срока удержания. Ключевое отличие — наличие обходного механизма. Так, пользователь с соответствующими правами IAM может намеренно обойти политику блокировки — например, для удаления объекта в случае операционной необходимости.

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

  • Режим Compliance (строгий). Обеспечивает максимальный уровень защиты. Заблокированная в этом режиме версия объекта не может быть перезаписана или удалена ни одним пользователем, включая администратора проекта, до истечения срока хранения.

Режим предназначен для выполнения строгих нормативных и законодательных требований (например, 152-ФЗ), которые предписывают, что неизменяемость данных должна быть гарантирована на техническом и процедурном уровне.

В Object Storage от VK Cloud предусмотрена поддержка всех упомянутых режимов и механизмов. При этом режим блокировки, временная метка окончания блокировки и флаг бессрочной блокировки реализованы в виде дополнительных атомарных атрибутов в записи метаданных объекта, хранящейся в кластере Tarantool.

От теории к практике: алгоритм использования Object Lock на примере Object Storage от VK Cloud 

Чтобы разобраться в принципах использования Object Lock, рассмотрим пошаговый алгоритм защиты критических данных на примере работы с объектным хранилищем Object Storage.

Весь процесс сводится к нескольким простым операциям.

Подготовка AWS CLI

Для начала создаем аккаунт и ключ доступа к Object Storage в личном кабинете VK Cloud и сохраняем Secret Key. 

Далее устанавливаем AWS CLI

Следующим шагом настраиваем подключение к Object Storage. Для этого:

  1. В консоли выполняем команду:

aws configure
  1. Указываем идентификатор ключа доступа к Object Storage.

  2. Указываем секретный ключ доступа Secret Key. Он должен соответствовать идентификатору ключа, указанному в консоли.

  3. Указываем регион размещения сервиса Object Storage по умолчанию:

ru-msk — регион Москва;

kz-ast — регион Казахстан.

  1. Указываем выходной формат по умолчанию, то есть в каком виде AWS CLI будет отображать результаты выполнения команды. Доступные варианты:

  • json — данные отображаются в формате JSON, значение по умолчанию;

  • yaml — данные отображаются в формате YAML;

  • yaml-stream — данные передаются в потоковом режиме и формируются в формате YAML;

  • текст — строковые значения разделены табуляцией;

  • таблица — строковые значения разделены.

Примечание: Полный гайд по подготовке AWS CLI доступен в документации VK Cloud.

Подготовка бакета

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

aws s3api create-bucket 
     --bucket <ИМЯ_БАКЕТА> 
     --endpoint-url <URL_СЕРВИСА> 
     --region <КОД_РЕГИОНА> 
     --object-lock-enabled-for-bucket

Здесь:

  • <ИМЯ_БАКЕТА> — имя бакета, соответствующее рекомендуемым правилам. После создания бакета изменить его имя будет невозможно.

  • <URL_СЕРВИСА> — домен сервиса Object Storage, должен соответствовать региону аккаунта:

  • <КОД_РЕГИОНА> — код региона аккаунта, например ru-msk для региона Москва. 

Примечание: Если бакет уже есть, этот шаг пропускается.

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

Для включения версионирования используем команду:

aws s3api put-bucket-versioning 
  --bucket <ИМЯ_БАКЕТА> 
  --endpoint-url <URL_СЕРВИСА>  
  --versioning-configuration Status=Enabled

Здесь:

Загрузка объекта и установка блокировки

Создаем объект:

echo "CRITICAL_DATA" > <ИМЯ_ОБЪЕКТА>
gzip <ИМЯ_ОБЪЕКТА>

Загружаем объект. В качестве примера устанавливаем временную блокировку в строгом режиме:

aws s3api put-object 
    --bucket <ИМЯ_БАКЕТА> 
    --endpoint-url <URL_СЕРВИСА> 
    --key <КЛЮЧ_ОБЪЕКТА> 
    --body <ПУТЬ> 
    --object-lock-mode COMPLIANCE 
    --object-lock-retain-until-date "<СРОК_БЛОКИРОВКИ>"

Здесь:

  • <ИМЯ_БАКЕТА> — имя бакета.

  • <URL_СЕРВИСА> — домен сервиса Object Storage, должен соответствовать региону аккаунта:

  • <КЛЮЧ_ОБЪЕКТА> — полное имя объекта, включая путь до него.

  • <ПУТЬ> — путь до директории, срок хранения к объектам в которой нужно изменить.

  • <СРОК_БЛОКИРОВКИ> — дата и время окончания блокировки в формате ISO 8601. Пример: 2030-01-01T00:00:00.000Z.

Проверка статуса блокировки

Чтобы узнать статус временной блокировки объекта, выполняем команду:

aws s3api get-object-retention
  --endpoint-url <URL_СЕРВИСА>
  --bucket <ИМЯ_БАКЕТА> 
  --key <КЛЮЧ_ОБЪЕКТА>

Здесь:

  • <URL_СЕРВИСА> — домен сервиса Object Storage, должен соответствовать региону аккаунта:

  • <ИМЯ_БАКЕТА> — имя бакета, в котором находится нужный объект.

  • <КЛЮЧ_ОБЪЕКТА> — имя объекта и путь до него, включая директории, если они есть.

Ответ должен содержать JSON-структуру, подтверждающую режим и дату окончания блокировки.

Проверка возможности удаления объекта

Пробуем удалить объект:

aws s3 rm s3://<ИМЯ_БАКЕТА>/<КЛЮЧ_ОБЪЕКТА> --endpoint-url <URL_СЕРВИСА>

Здесь:

  • <ИМЯ_БАКЕТА> — имя бакета, в котором находится нужный объект.

  • <КЛЮЧ_ОБЪЕКТА> — имя объекта и путь до него, включая директории, если они есть.

  • <URL_СЕРВИСА> — домен сервиса Object Storage, должен соответствовать региону аккаунта:

В ответ должна прийти ошибка Access Denied. Это подтверждает активную WORM-защиту.

Проверка доступности объекта

Чтобы убедиться в доступности объекта для чтения и скачивания, используем команду:

aws s3api get-object --bucket <ИМЯ_БАКЕТА> --key <КЛЮЧ_ОБЪЕКТА> <ИМЯ_ФАЙЛА> --endpoint-url <URL_СЕРВИСА>

Здесь:

  • <ИМЯ_БАКЕТА> — имя бакета, в котором находится нужный объект.

  • <КЛЮЧ_ОБЪЕКТА> — имя объекта и путь до него, включая директории, если они есть.

  • <ИМЯ_ФАЙЛА> — имя, которое будет присвоено скачанному файлу.

  • <URL_СЕРВИСА> — домен сервиса Object Storage, должен соответствовать региону аккаунта:

Если все хорошо, должно начаться скачивание объекта. Профит.

Примечание: Полный гайд по использованию Object Lock в Object Cloud доступен в документации VK Cloud.

Что в итоге

Динамика развития рынка и увеличение количества кибератак создают условия, при которых потребность в эффективных инструментах защиты ежегодно возрастает. Соответственно, с ростом популярности объектных хранилищ S3 и ужесточением регламентов в части информационной безопасности количество компаний, использующих Object Lock, также растет.

При этом опыт наших клиентов и представленный гайд довольно наглядно показывают, что для эффективной защиты объектов от несанкционированного удаления или изменения в Object Storage от VK Cloud достаточно нескольких простых команд. Попробовать может каждый уже сейчас.

Комментарии (0)