Поделиться через


Настройка политики неизменяемости 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-объектов см. в разделе Create 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 операцию, как описано ниже.

Важно!

Корпорация Майкрософт рекомендует использовать Microsoft Entra ID с управляемыми удостоверениями для авторизации запросов к службе хранилища Azure. Microsoft Entra ID обеспечивает более высокий уровень безопасности и простоту использования по сравнению с авторизацией с общим ключом.

Служба хранилища 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 см. в статье Назначение роли Azure для доступа к данным BLOB-объектов.

Комментарии

Настройка политики неизменяемости BLOB-объектов в хранилище BLOB-объектов или учетной записи общего назначения версии 2 имеет следующие ограничения.

  • Настройка политики неизменяемости для snapshot или версии разрешена с версии REST 2020-06-12.
  • Когда политика неизменяемости находится в unlocked режиме, пользователи могут обновлять срок хранения до даты. Если политика неизменяемости находится в locked режиме, пользователи могут продлить срок хранения только до даты. Режим политики неизменяемости можно изменить с unlocked на locked, но не с locked на unlocked.
  • Если в большом двоичном объекте существует политика неизменяемости, а для контейнера или учетной записи также существует политика неизменяемости по умолчанию, политика неизменяемости 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-объектов