Установка тегов BLOB-объектов

Операция Set Blob Tags задает пользовательские теги для указанного большого двоичного объекта в виде одной или нескольких пар "ключ-значение".

Запрос

Запрос Set Blob Tags можно составить следующим образом. Рекомендуется использовать ПРОТОКОЛ HTTPS. Замените myaccount именем своей учетной записи хранения:

URI запроса метода PUT параметр "Версия HTTP"
https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=tags

https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=tags&versionid=<DateTime>
HTTP/1.1

Параметры универсального кода ресурса (URI)

В запросе URI можно указать следующие дополнительные параметры.

Параметр Описание
versionid Необязательно для версии 2019-12-12 и более поздних версий. Параметр versionid является непрозрачным значением DateTime , которое при наличии указывает версию извлекаемого большого двоичного объекта.
timeout Необязательный элемент. Параметр timeout указывается в секундах. Дополнительные сведения см. в статье Настройка времени ожидания для операций с хранилищем BLOB-объектов.

Заголовки запросов

Обязательные и необязательные заголовки запросов описаны в следующей таблице:

Заголовок запроса Описание
Authorization Обязательный. Указывает схему авторизации, имя учетной записи и подпись. Дополнительные сведения см. в статье Авторизация запросов к Службе хранилища Azure.
Date или x-ms-date Обязательный. Задает время запроса в формате UTC. Дополнительные сведения см. в статье Авторизация запросов к Службе хранилища Azure.
x-ms-version Требуется для всех авторизованных запросов. Задает версию операции, используемой для этого запроса. Дополнительные сведения см. в разделе Управление версиями для служб хранилища Azure.
Content-Length Обязательный. Длина содержимого запроса в байтах. Этот заголовок ссылается на длину содержимого документа тегов, а не самого большого двоичного объекта.
Content-Type Обязательный. Значение этого заголовка должно быть application/xml; charset=UTF-8.
Content-MD5 Необязательный элемент. Хэш MD5 содержимого запроса. Этот хэш используется для проверки целостности содержимого запроса в ходе транспортировки. Если два хэша не совпадают, операция завершается ошибкой с кодом 400 (недопустимый запрос).

Этот заголовок связан с содержимым запроса, а не с содержимым самого большого двоичного объекта.
x-ms-content-crc64 Необязательный элемент. Хэш CRC64 содержимого запроса. Этот хэш используется для проверки целостности содержимого запроса в ходе транспортировки. Если два хэша не совпадают, операция завершается ошибкой с кодом 400 (недопустимый запрос).

Этот заголовок связан с содержимым запроса, а не с содержимым самого большого двоичного объекта.

Если присутствуют оба Content-MD5 заголовка и x-ms-content-crc64 , запрос завершается ошибкой с кодом 400 (недопустимый запрос).
x-ms-lease-id:<ID> Требуется, если у большого двоичного объекта имеется активная аренда.

Для выполнения этой операции в большом двоичном объекте с активной арендой укажите допустимый идентификатор аренды для этого заголовка. Если в запросе не указан допустимый идентификатор аренды, операция завершается ошибкой с кодом состояния 403 (запрещено).
x-ms-client-request-id Необязательный элемент. Предоставляет созданное клиентом непрозрачное значение с ограничением в 1 кибибайт (КиБ), которое записывается в журналы при настройке ведения журнала. Мы настоятельно рекомендуем использовать этот заголовок для сопоставления действий на стороне клиента с запросами, получаемыми сервером. Дополнительные сведения см. в разделе Мониторинг Хранилище BLOB-объектов Azure.

Эта операция поддерживает условный x-ms-if-tags заголовок для задания тегов BLOB-объектов, только если выполняется указанное условие. Дополнительные сведения см . в разделе Указание условных заголовков для операций с хранилищем BLOB-объектов.

Текст запроса

Далее приведен формат текста запроса.

<?xml version="1.0" encoding="utf-8"?>  
<Tags>  
    <TagSet>  
        <Tag>  
            <Key>tag-name-1</Key>  
            <Value>tag-value-1</Value>  
        </Tag>  
        <Tag>  
            <Key>tag-name-2</Key>  
            <Value>tag-value-2</Value>  
        </Tag>  
    </TagSet>  
</Tags>  

Текст запроса должен быть XML-документом правильного формата UTF-8 и содержать набор тегов, представляющий теги для большого двоичного объекта.

Набор тегов может содержать не более 10 тегов. Ключи и значения тегов чувствительны к регистру. Ключи тегов должны содержать от 1 до 128 символов, а значения тегов — от 0 до 256 символов. Допустимые ключи тега и символы значений включают:

  • Строчные и прописные буквы (a–z, A–Z)
  • Цифры (0–9)
  • Пробел ( )
  • Плюс (+), минус (-), точка (.), косая черта (/), двоеточие (:), равно (=) и подчеркивание (_)

Ответ

Ответ включает код состояния HTTP и набор заголовков ответа.

Код состояния

Успешная операция возвращает код состояния 204 (нет контента).

Дополнительные сведения о кодах состояния см. в разделе Коды состояния и ошибок.

Заголовки ответов

Ответ для этой операции включает следующие заголовки. Ответ может также включать дополнительные стандартные заголовки HTTP. Все стандартные заголовки соответствуют спецификации протокола HTTP/1.1.

Заголовок ответа Описание
x-ms-request-id Уникально идентифицирует выполненный запрос и может использоваться для устранения неполадок с запросом. Дополнительные сведения см. в статье Устранение неполадок с операциями API.
x-ms-version Версия хранилища BLOB-объектов, которая использовалась для выполнения запроса.
Date Значение даты и времени в формате UTC, созданное службой, которое указывает время инициации ответа.
x-ms-client-request-id Может использоваться для устранения неполадок запросов и соответствующих ответов. Значение этого заголовка равно значению заголовка x-ms-client-request-id , если он присутствует в запросе и содержит не более 1024 видимых символов ASCII. Если заголовок x-ms-client-request-id отсутствует в запросе, он не будет присутствовать в ответе.

Текст ответа

Нет.

Авторизация

Авторизация требуется при вызове любой операции доступа к данным в службе хранилища Azure. Вы можете авторизовать операцию, Set Blob Tags как описано ниже.

Важно!

Корпорация Майкрософт рекомендует использовать 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 Tags операции, а также встроенная роль Azure RBAC с наименьшими привилегиями, которая включает это действие:

Дополнительные сведения о назначении ролей с помощью Azure RBAC см. в статье Назначение роли Azure для доступа к данным BLOB-объектов.

Комментарии

Эта Set Blob Tags операция поддерживается в REST API версии 2019-12-12 и более поздних версиях.

Для учетных записей с включенным иерархическим пространством имен операция не поддерживается, Set Blob Tags так как теги больших двоичных объектов не поддерживаются для учетных записей иерархического пространства имен.

Операция Set Blob Tags перезаписывает все существующие теги в большом двоичном объекте. Чтобы удалить все теги из большого двоичного объекта, отправьте Set Blob Tags запрос с пустым <TagSet>.

Эта операция не обновляет ETag или время последнего изменения большого двоичного объекта. Можно задать теги для архивного большого двоичного объекта.

Служба хранилища поддерживает строгой согласованность между BLOB-объектом и его тегами. Изменения тегов BLOB-объектов сразу же видны для последующих Get Blob Tags операций с большим двоичным объектом. Однако вторичный индекс в конечном итоге является согласованным. Изменения тегов большого двоичного объекта могут быть не сразу видны Find Blobs by Tags операциям.

Если запрос предоставляет недопустимые теги, хранилище BLOB-объектов возвращает код состояния 400 (недопустимый запрос).

Выставление счетов

Запросы на ценообразование могут исходить от клиентов, использующих API хранилища BLOB-объектов, напрямую через REST API хранилища BLOB-объектов или из клиентской библиотеки службы хранилища Azure. Эти запросы начисляют плату за каждую транзакцию. Тип транзакции влияет на способ оплаты учетной записи. Например, транзакции чтения начисляются на категорию выставления счетов, отличную от категории операций записи. В следующей таблице показана категория выставления счетов для Set Blob Tags запросов на основе типа учетной записи хранения.

Операция Тип учетной записи хранения Категория выставления счетов
Установка тегов BLOB-объектов Блочный BLOB-объект (ценовая категории "Премиум")
Общего назначения версии 2 (цен. категория "Стандартный")
Другие операции
Установка тегов BLOB-объектов Стандартная общего назначения версии 1 Операции записи

Дополнительные сведения о ценах для указанной категории выставления счетов см. в разделе Цены на Хранилище BLOB-объектов Azure.

См. также раздел

Управление данными хранилища BLOB-объектов и их поиск с помощью тегов индекса BLOB-объектов
Авторизация запросов к службе хранилища Azure
Коды состояний и ошибок
Коды ошибок хранилища BLOB-объектов