Метод putObjectRetention
Устанавливает на версию объекта временную блокировку либо настраивает или снимает уже установленную блокировку.
Чтобы на версии объектов можно было устанавливать блокировки, в бакете должен быть включен механизм блокировок. Включить его можно с помощью метода putObjectLockConfiguration.
Изменить установленную блокировку может только пользователь с ролью storage.admin
. При изменении управляемой блокировки нужно использовать заголовок, подтверждающий обход блокировки (см. ниже). Строгую блокировку можно только продлить. Проверить блокировку можно с помощью метода getObjectRetention.
Подробнее о подготовке к работе с API и общем виде запроса см. в разделе Как пользоваться S3 API.
Запрос
PUT /{bucket}/{key}?retention&versionId={versionId} HTTP/2
Path-параметры
Параметр | Описание |
---|---|
bucket |
Имя бакета. |
key |
Ключ объекта. |
Query-параметры
Параметр | Описание |
---|---|
retention |
Обязательный параметр для обозначения типа операции. |
versionId |
Идентификатор версии объекта. Обязательный параметр. |
Заголовки
Используйте в запросе необходимые общие заголовки.
Также, если на версию объекта установлена временная управляемая блокировка (governance-mode retention), обязательно используйте заголовок, описанный ниже, чтобы обойти блокировку и подтвердить ее изменение.
Заголовок | Описание |
---|---|
X-Amz-Bypass-Governance-Retention |
Заголовок, подтверждающий обход временной управляемой блокировки. Укажите значение true . |
Схема данных
<Retention xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Mode>string</Mode>
<RetainUntilDate>timestamp</RetainUntilDate>
</Retention>
Элемент | Описание |
---|---|
Retention |
Корневой элемент с настройками блокировки. Чтобы снять управляемую блокировку (если у вас есть роль Путь: |
Mode |
Тип блокировки:
Путь: |
RetainUntilDate |
Дата и время окончания блокировки в формате RFC3339 Путь: |
Ответ
Заголовки
Ответ может содержать только общие заголовки.
Коды ответов
Перечень возможных ответов смотрите в разделе Ответы.