Настройка политики неизменяемости BLOB-объектов
Операция Set Blob Immutability Policy
задает политику неизменяемости для большого двоичного объекта. Эта операция не обновляет ETag BLOB-объекта. Этот API доступен с версии 2020-06-12.
Запрос
Запрос Set Blob Immutability Policy
можно составить следующим образом. Рекомендуется использовать ПРОТОКОЛ HTTPS. Замените myaccount именем учетной записи хранения, а myblob — именем большого двоичного объекта, для которого необходимо изменить политику неизменности.
Метод | Универсальный код ресурса (URI) запроса | параметр "Версия HTTP" |
---|---|---|
PUT |
https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=immutabilityPolicies |
HTTP/1.1 |
Параметры универсального кода ресурса (URI)
В запросе URI можно указать следующие дополнительные параметры.
Параметр | Описание |
---|---|
snapshot |
Необязательный элемент. Параметр snapshot является непрозрачным DateTime значением, которое при его наличии указывает snapshot большого двоичного объекта для установки уровня. Дополнительные сведения о работе с моментальными снимками BLOB-объектов см. в разделе Создание snapshot BLOB-объекта. |
versionid |
Необязательно для версии 2019-12-12 и более поздних версий. Параметр versionid является непрозрачным DateTime значением, которое при его наличии указывает версию большого двоичного объекта для установки уровня. |
timeout |
Необязательный элемент. Параметр timeout указывается в секундах. Дополнительные сведения см. в разделе Настройка времени ожидания для операций с хранилищем BLOB-объектов. |
Заголовки запросов
Обязательные и необязательные заголовки запросов описаны в следующей таблице:
Заголовок запроса | Описание |
---|---|
Authorization |
Обязательный. Указывает схему авторизации, имя учетной записи хранения и подпись. Дополнительные сведения см. в статье Авторизация запросов к Службе хранилища Azure. |
Date или x-ms-date |
Обязательный. Задает время запроса в формате UTC. Дополнительные сведения см. в статье Авторизация запросов к Службе хранилища Azure. |
x-ms-immutability-policy-until-date |
Обязательный. Указывает срок хранения до даты, установленной для большого двоичного объекта. Это дата, до которой blob-объект можно защитить от изменения или удаления. Для хранилища BLOB-объектов или учетной записи общего назначения версии 2 допустимые значения имеют формат RFC1123. Прошлые времена недопустимы. |
x-ms-immutability-policy-mode |
Необязательный элемент. Если значение не указано, значение по умолчанию — Unlocked . Указывает режим политики неизменности для большого двоичного объекта. Для хранилища BLOB-объектов или учетной записи общего назначения версии 2 допустимые значения: Unlocked /Locked . unlocked указывает, что пользователь может изменить политику, увеличив или уменьшив срок хранения до даты. locked указывает, что эти действия запрещены. |
x-ms-version |
Требуется для всех авторизованных запросов. Задает версию операции, используемой для этого запроса. Дополнительные сведения см. в разделе Управление версиями для служб хранилища Azure. |
x-ms-client-request-id |
Необязательный элемент. Предоставляет созданное клиентом непрозрачное значение с ограничением в 1 кибибайт (КиБ), которое записывается в журналы при настройке ведения журнала. Мы настоятельно рекомендуем использовать этот заголовок для сопоставления действий на стороне клиента с запросами, получаемыми сервером. Дополнительные сведения см. в разделе Мониторинг Хранилище BLOB-объектов Azure. |
Эта операция также поддерживает использование условных заголовков для задания большого двоичного объекта только в том случае, если выполняется указанное условие. Дополнительные сведения см. в разделе Указание условных заголовков для операций с хранилищем BLOB-объектов.
Текст запроса
Нет.
Ответ
Ответ включает код состояния HTTP и набор заголовков ответа.
Код состояния
Успешная операция возвращает код состояния 200 (ОК).
Сведения о кодах состояния см. в разделе Коды состояния и ошибок.
Заголовки ответов
Ответ для этой операции содержит заголовки ниже. Ответ может также включать дополнительные стандартные заголовки HTTP. Все стандартные заголовки соответствуют спецификации протокола HTTP/1.1.
Заголовок ответа | Описание |
---|---|
x-ms-request-id |
Уникально идентифицирует выполненный запрос и может использоваться для устранения неполадок с запросом. Дополнительные сведения см. в разделе Устранение неполадок с операциями API. |
x-ms-version |
Указывает версию хранилища BLOB-объектов, которая использовалась для выполнения запроса. Возвращается для запросов, выполненных в версии 2009-09-19 и более поздних версий. |
x-ms-client-request-id |
Может использоваться для устранения неполадок с запросами и соответствующими ответами. Значение этого заголовка равно значению заголовка x-ms-client-request-id , если он присутствует в запросе и содержит не более 1024 видимых символов ASCII. Если заголовок x-ms-client-request-id отсутствует в запросе, он не будет присутствовать в ответе. |
x-ms-immutability-policy-until-date |
Указывает дату хранения, заданную для большого двоичного объекта. Это дата, до которой blob-объект можно защитить от изменения или удаления. |
x-ms-immutability-policy-mode |
Указывает режим политики неизменности, заданный для большого двоичного объекта. Значения: unlocked и locked . Значениеunlocked указывает, что пользователь может изменить политику путем увеличения или уменьшения срока хранения до даты, и locked указывает, что эти действия запрещены. |
Авторизация
При вызове любой операции доступа к данным в службе хранилища Azure требуется авторизация. Вы можете авторизовать Set Blob Immutability Policy
операцию, как описано ниже.
Служба хранилища Azure поддерживает использование Microsoft Entra ID для авторизации запросов к данным BLOB-объектов. С помощью Microsoft Entra ID можно использовать управление доступом на основе ролей Azure (Azure RBAC) для предоставления разрешений субъекту безопасности. Субъект безопасности может быть пользователем, группой, субъектом-службой приложения или управляемым удостоверением Azure. Субъект безопасности проходит проверку подлинности с помощью Microsoft Entra ID для возврата маркера OAuth 2.0. Затем маркер можно использовать для авторизации запроса к службе BLOB-объектов.
Дополнительные сведения об авторизации с помощью Microsoft Entra ID см. в статье Авторизация доступа к BLOB-объектам с помощью Microsoft Entra ID.
Разрешения
Ниже перечислены действия RBAC, необходимые для Microsoft Entra пользователя, группы или субъекта-службы для вызова Set Blob Immutability Policy
операции, а также встроенная роль Azure RBAC с наименьшими привилегиями, которая включает это действие:
- Действие Azure RBAC:Microsoft.Storage/storageAccounts/blobServices/containers/write
- Встроенная роль с минимальными привилегиями:Участник данных BLOB-объектов хранилища
Дополнительные сведения о назначении ролей с помощью Azure RBAC см. в статье Назначение роли Azure для доступа к данным BLOB-объектов.
Комментарии
Настройка политики неизменяемости BLOB-объекта в хранилище BLOB-объектов или учетной записи общего назначения версии 2 имеет следующие ограничения.
- Установка политики неизменяемости для snapshot или версии разрешена с версии REST 2020-06-12.
- Когда политика неизменяемости находится в
unlocked
режиме , пользователи могут обновлять срок хранения до даты. Если политика неизменяемости находится вlocked
режиме, пользователи могут продлить срок хранения только до даты. Режим политики неизменности можно изменить сunlocked
на , но не с наunlocked
locked
.locked
- Если для BLOB-объекта существует политика неизменяемости, а также политика неизменности по умолчанию для контейнера или учетной записи, политика неизменяемости BLOB-объектов имеет прецедент.
- Для политики
PutBlockList/PutBlob/CopyBlob
неизменяемости на уровне BLOB-объектов операции разрешены, так как эти операции создают новую версию. - Если политика неизменности находится в
unlocked
режиме , пользователи могут удалить политику неизменности с помощью следующего API:
Метод | Универсальный код ресурса (URI) запроса | параметр "Версия HTTP" |
---|---|---|
Delete |
https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=immutabilityPolicies |
HTTP/1.1 |
Примечание
Дополнительные сведения см. в разделе Неизменяемое хранилище.
Выставление счетов
Запросы на ценообразование могут исходить от клиентов, использующих API хранилища BLOB-объектов, напрямую через REST API хранилища BLOB-объектов или из клиентской библиотеки службы хранилища Azure. Эти запросы начисляют плату за каждую транзакцию. Тип транзакции влияет на способ оплаты учетной записи. Например, транзакции чтения начисляются на категорию выставления счетов, отличную от категории операций записи. В следующей таблице показана категория выставления счетов для Set Blob Immutability Policy
запросов на основе типа учетной записи хранения.
Операция | Тип учетной записи хранения | Категория выставления счетов |
---|---|---|
Настройка политики неизменяемости BLOB-объектов | Блочный BLOB-объект (ценовая категории "Премиум") Общего назначения версии 2 (цен. категория "Стандартный") Стандартная общего назначения версии 1 |
Другие операции |
Дополнительные сведения о ценах для указанной категории выставления счетов см. в разделе Цены на Хранилище BLOB-объектов Azure.
См. также раздел
Авторизация запросов к службе хранилища Azure
Коды состояний и ошибок
Коды ошибок хранилища BLOB-объектов
Настройка времени ожидания для операций с хранилищем BLOB-объектов