Delete BLOB (Удаление BLOB-объекта)
Операция Delete Blob
удаляет указанный большой двоичный объект или snapshot.
Обратите внимание, что для удаления большого двоичного объекта необходимо удалить все его моментальные снимки. И объект, и его снимки можно удалить одновременно с помощью операции Delete Blob
.
Запрос
Запрос можно создать Delete Blob
следующим образом. Рекомендуется использовать протокол HTTPS. Замените myaccount именем своей учетной записи хранения.
URI запроса метода DELETE | параметр "Версия HTTP" |
---|---|
https://myaccount.blob.core.windows.net/mycontainer/myblob https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=<DateTime> https://myaccount.blob.core.windows.net/mycontainer/myblob?versionid=<DateTime> |
HTTP/1.1 |
URI эмулированной службы хранилища
При выполнении запроса к эмулированной службе хранилища укажите имя узла эмулятора и порт Хранилище BLOB-объектов Azure в качестве 127.0.0.1:10000
, за которым следует эмулированное имя учетной записи хранения.
URI запроса метода DELETE | параметр "Версия HTTP" |
---|---|
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob |
HTTP/1.1 |
Дополнительные сведения см. в статье Использование эмулятора Azurite для разработки локальной службы хранилища Azure.
Параметры универсального кода ресурса (URI)
В URI запроса можно указать следующие дополнительные параметры.
Параметр | Описание |
---|---|
snapshot |
Необязательный элемент. Параметр моментального снимка является непрозрачным значением DateTime , которое, если присутствует, указывает удаляемый моментальный снимок большого двоичного объекта. Дополнительные сведения о работе с моментальными снимками BLOB-объектов см. в статье Создание snapshot большого двоичного объекта. |
versionid |
Необязательно, версия 2019-12-12 и более поздние. Параметр versionid является непрозрачным значением DateTime , которое при его наличии указывает версию большого двоичного объекта для удаления. |
timeout |
Необязательный элемент. Параметр timeout указывается в секундах. Дополнительные сведения см. в разделе Настройка времени ожидания для операций с хранилищем BLOB-объектов. |
deletetype |
Необязательно, версия 2020-02-10 или более поздняя. Значение может deletetype быть permanent только . |
Заголовки запросов
В следующей таблице перечислены обязательные и необязательные заголовки запросов.
Заголовок запроса | Описание |
---|---|
Authorization |
Обязательный. Указывает схему авторизации, имя учетной записи и подпись. Дополнительные сведения см. в статье Авторизация запросов к Службе хранилища Azure. |
Date или x-ms-date |
Обязательный. Задает время запроса в формате UTC. Дополнительные сведения см. в статье Авторизация запросов к Службе хранилища Azure. |
x-ms-version |
Требуется для всех авторизованных запросов. Дополнительные сведения см. в разделе Управление версиями для служб хранилища Azure. |
x-ms-lease-id:<ID> |
Требуется, если у большого двоичного объекта имеется активная аренда. Для выполнения этой операции в большом двоичном объекте с активной арендой укажите допустимый идентификатор аренды для этого заголовка. Если в запросе не указан допустимый идентификатор аренды, операция завершается ошибкой с кодом состояния 403 (запрещено). |
x-ms-delete-snapshots: {include, only} |
Является обязательным, если у большого двоичного объекта имеются связанные моментальные снимки. Выберите один из следующих вариантов: - include : удаляет базовый BLOB-объект и все его моментальные снимки.- only : удаление только моментальных снимков большого двоичного объекта, а не самого большого двоичного объекта.Укажите этот заголовок только для запроса к ресурсу базового BLOB-объекта. Если этот заголовок указан в запросе на удаление отдельного snapshot, хранилище BLOB-объектов возвращает код состояния 400 (недопустимый запрос). Если этот заголовок не указан в запросе и большой двоичный объект имеет связанные моментальные снимки, хранилище BLOB-объектов возвращает код состояния 409 (конфликт). |
x-ms-client-request-id |
Необязательный элемент. Предоставляет созданное клиентом непрозрачное значение с ограничением в 1 кибибайт (КиБ), которое записывается в журналы при настройке ведения журнала. Мы настоятельно рекомендуем использовать этот заголовок для сопоставления действий на стороне клиента с запросами, получаемыми сервером. Дополнительные сведения см. в разделе Мониторинг Хранилище BLOB-объектов Azure. |
Эта операция также поддерживает использование условных заголовков для удаления большого двоичного объекта только при выполнении заданного условия. Дополнительные сведения см. в разделе Указание условных заголовков для операций с хранилищем BLOB-объектов.
Текст запроса
Нет.
Ответ
Ответ включает код состояния HTTP и набор заголовков ответа.
Код состояния
Успешная операция возвращает код состояния 202 (принято). Сведения о кодах состояния см. в разделе Коды состояния и ошибок.
Заголовки ответов
Ответ для этой операции включает следующие заголовки. Ответ также может содержать дополнительные стандартные заголовки HTTP. Все стандартные заголовки соответствуют спецификации протокола HTTP/1.1.
Заголовок ответа | Описание |
---|---|
x-ms-request-id |
Этот заголовок однозначно идентифицирует выполненный запрос и может использоваться для устранения неполадок с запросом. Дополнительные сведения см. в разделе Устранение неполадок операций API. |
x-ms-version |
Указывает версию хранилища BLOB-объектов, используемой для выполнения запроса. Этот заголовок возвращается для запросов к версии 2009-09-19 и более поздним версиям. |
x-ms-delete-type-permanent |
Для версии 2017-07-29 и более поздних, хранилище BLOB-объектов возвращает значение true , если BLOB-объект был удален без возможности восстановления, и false если blob-объект был обратимо удален. |
Date |
Значение даты и времени в формате UTC, указывающее время, в которое был инициирован ответ. Служба создает это значение. |
x-ms-client-request-id |
Этот заголовок можно использовать для устранения неполадок с запросами и соответствующими ответами. Значение этого заголовка равно значению заголовка x-ms-client-request-id , если он присутствует в запросе. Значение равно не более 1024 видимых символов ASCII. Если заголовок x-ms-client-request-id отсутствует в запросе, этот заголовок не будет присутствовать в ответе. |
Авторизация
Авторизация требуется при вызове любой операции доступа к данным в службе хранилища Azure. Вы можете авторизовать операцию, Delete Blob
как описано ниже.
Важно!
Корпорация Майкрософт рекомендует использовать 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 пользователю, группе, управляемому удостоверению или субъекту-службе для вызова Delete Blob
операции, а также встроенная роль Azure RBAC с наименьшими привилегиями, которая включает это действие:
- Действие Azure RBAC:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete
- Встроенная роль с минимальными привилегиями:Участник данных BLOB-объектов хранилища
Дополнительные сведения о назначении ролей с помощью Azure RBAC см. в статье Назначение роли Azure для доступа к данным BLOB-объектов.
Комментарии
Если большой двоичный объект имеет активную аренду, то для его удаления клиент должен указать в запросе действительный идентификатор аренды.
Если большой двоичный объект содержит большое количество моментальных снимков, возможно Delete Blob
, время ожидания операции истекает. В этом случае клиент должен повторить запрос.
В версии 2013-08-15 и более поздних клиент может вызывать Delete Blob
метод для удаления незафиксированных BLOB-объектов.
Незафиксированный BLOB-объект — это большой двоичный объект, созданный с помощью вызовов операции Put Block, но никогда не зафиксированный с помощью операции Put Block List. В предыдущих версиях клиент должен был сначала зафиксировать большой двоичный объект и только потом удалить его.
Функция обратимого удаления отключена
Если blob-объект успешно удален, он немедленно удаляется из индекса учетной записи хранения и становится недоступным для клиентов.
Функция обратимого удаления включена
Если большой двоичный объект успешно удален, он обратимо удаляется и больше недоступен для клиентов. Хранилище BLOB-объектов сохраняет большой двоичный объект или snapshot в течение количества дней, указанного для DeleteRetentionPolicy
свойства Хранилища BLOB-объектов. Сведения о чтении свойств хранилища BLOB-объектов см. в разделе Установка свойств хранилища BLOB-объектов.
По истечении указанного количества дней данные blob-объекта удаляются из службы. Доступ к обратимо удаленному БОЛЬШОМу двоичному объекту или snapshot можно получить, вызвав операцию Перечисление BLOB-объектов и указав include=deleted
параметр .
Обратимо удаленные blob-объекты или моментальные снимки можно восстановить с помощью отмены удаления BLOB-объекта. Для любой другой операции с обратимо удаленными BLOB-объектами или моментальными снимками хранилище BLOB-объектов возвращает ошибку 404 (Ресурс не найден).
Безвозвратное удаление
В версии 2020-02-10 и более поздних можно окончательно удалить обратимо удаленный snapshot или версию. Для этого включите эту функцию. Дополнительные сведения см. в разделе Настройка свойств хранилища BLOB-объектов.
Примечание
В учетной записи хранения должно быть включено управление версиями или моментальные снимки. Обратимое удаление также должно быть включено в учетной записи хранения для обратимого удаления версий или моментальных снимков больших двоичных объектов в учетной записи. При окончательном удалении удаляются только обратимо удаленные моментальные снимки или версии.
Учетные записи хранения с включенным необратимым удалением могут использовать deletetype=permanent
параметр запроса для окончательного удаления обратимо удаленного snapshot или версии blob-объекта.
Если параметр запроса представляет одно из следующих значений, хранилище BLOB-объектов возвращает ошибку 409 (конфликт):
- Функция окончательного удаления не включена для учетной записи хранения.
- Ни,
versionid
ниsnapshot
не предоставляются. - Указанный snapshot или версия не удаляется обратимым методом.
Окончательное удаление также включает в себя разрешение подписанного URL-адреса для окончательного удаления большого двоичного объекта snapshot или версии BLOB-объекта. Дополнительные сведения см. в статье Create SAS службы.
Выставление счетов
Плата за запросы с Delete Blob
учетных записей хранения не взимается.
См. также раздел
Авторизация запросов к службе хранилища Azure
Коды ошибок хранилища BLOB-объектов