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


Установка срока действия BLOB-объекта

Операция Set Blob Expiry задает дату окончания срока действия для существующего большого двоичного объекта. Эта операция разрешена только для учетных записей с поддержкой иерархического пространства имен. Применяется к службе версии 2020-02-10 и более поздних версий.

Запрос

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

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

Имитированный URI службы хранилища

При выполнении запроса к эмулированной службе хранилища укажите имя узла эмулятора и порт хранилища BLOB-объектов как 127.0.0.1:10000, а затем имя эмулированной учетной записи хранения:

URI запроса метода PUT параметр "Версия HTTP"
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob?comp=expiry HTTP/1.1

Дополнительные сведения см. в статье Использование эмулятора Azurite для разработки и тестирования службы хранилища Azure.

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

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

Параметр Описание
timeout Необязательный элемент. Параметр timeout указывается в секундах. Дополнительные сведения см. в статье Настройка времени ожидания для операций с хранилищем BLOB-объектов.

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

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

Заголовок запроса Описание
Authorization Обязательный. Указывает схему проверки подлинности, имя учетной записи и подпись. Дополнительные сведения см . в статье Проверка подлинности для служб хранилища Azure .
Date или x-ms-date Обязательный. Задает время запроса в формате UTC. Дополнительные сведения см. в статье Проверка подлинности для служб хранилища Azure.
x-ms-version Требуется для запросов с проверкой подлинности. Задает версию операции, используемой для этого запроса. Дополнительные сведения см. в разделе Управление версиями для служб хранилища Azure.
x-ms-lease-id:<ID> Требуется, если у большого двоичного объекта имеется активная аренда. Для выполнения этой операции в большом двоичном объекте с активной арендой укажите допустимый идентификатор аренды для этого заголовка.
x-ms-expiry-option Обязательный. Сведения об указании даты окончания срока действия запроса см. в разделе ExpiryOption.
x-ms-expiry-time Необязательный элемент. Время истечения срока действия файла. Формат даты окончания срока действия зависит от x-ms-expiry-option. Дополнительные сведения см. в разделе ExpiryOption.
x-ms-client-request-id Необязательный элемент. Предоставляет созданное клиентом непрозрачное значение с ограничением в 1 кибибайт (КиБ), которое записывается в журналы при настройке ведения журнала. Мы настоятельно рекомендуем использовать этот заголовок для сопоставления действий на стороне клиента с запросами, получаемыми сервером. Дополнительные сведения см. в разделе Мониторинг Хранилище BLOB-объектов Azure.

ExpiryOption

Следующие значения можно отправить в качестве заголовка x-ms-expiry-option . Этот заголовок не учитывает регистр.

Параметр истечения срока действия Описание
RelativeToCreation Задает дату окончания срока действия относительно времени создания файла. x-ms-expiry-time необходимо указать в виде количества миллисекунда, истекшего с момента создания.
RelativeToNow Задает дату окончания срока действия относительно текущего времени. x-ms-expiry-time необходимо указать как количество миллисекундах, истекаемых с текущего времени.
Absolute x-ms-expiry-time необходимо указать как абсолютное время в формате RFC 1123.
NeverExpire Устанавливает срок действия файла никогда не истечет или удаляет текущую дату окончания срока действия. x-ms-expiry-time не должен указываться.

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

Текст запроса для этого запроса пуст.

Пример запроса

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=expiry HTTP/1.1  
  
Request Headers:  
x-ms-version: 2020-02-10  
x-ms-date: Sun, 25 Sep 2020 14:37:35 GMT
x-ms-expiry-option: RelativeTonow
x-ms-expiry-time: 30000  
Authorization: SharedKey myaccount:J4ma1VuFnlJ7yfk/Gu1GxzbfdJloYmBPWlfhZ/xn7GI=    

Ответ

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

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

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

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

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

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

Заголовок ответа Описание
ETag Содержит значение, представляющее версию файла. Значение заключено в кавычки.
Last-Modified Возвращает дату и время последнего изменения каталога. Дата в формате согласно RFC 1123. Дополнительные сведения см. в разделе Представление значений даты и времени в заголовках. Любая операция, которая изменяет каталог или его свойства, обновляет время последнего изменения. Операции с файлами не влияют на время последнего изменения каталога.
x-ms-request-id Уникально идентифицирует выполненный запрос и может использоваться для устранения неполадок с запросом. Дополнительные сведения см. в статье Устранение неполадок с операциями API.
x-ms-version Указывает версию хранилища BLOB-объектов, которая использовалась для выполнения запроса.
Date Значение даты и времени в формате UTC, созданное службой, которое указывает время инициации ответа.

Пример ответа

Response Status:  
HTTP/1.1 200 OK  
  
Response Headers:  
Date: Sun, 25 Sep 2011 23:47:09 GMT  
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0  

Авторизация

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

Важно!

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

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

Комментарии

Ниже приведена семантика для установки даты окончания срока действия для BLOB-объекта.

  • Set Expiry можно задать только для файла, а не каталога.
  • Set Expiry с в expiryTime прошлом не допускается.
  • ExpiryTime не может быть указан со значением expiryOptionNever.

Примечание

Файл с истекшим сроком действия нельзя восстановить с помощью функции обратимого удаления BLOB-объектов. Даже если вы включили обратимое удаление для учетной записи, по истечении срока действия файл с истекшим сроком действия не станет обратимо удаленным BLOB-объектом. Обратимо удаленными могут стать только удаленные файлы.

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

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

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

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

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