Usuwanie obiektu blob
Operacja Delete Blob
oznacza określony obiekt blob lub migawkę do usunięcia. Obiekt blob zostanie później usunięty podczas odzyskiwania pamięci.
Należy pamiętać, że aby usunąć obiekt blob, należy usunąć wszystkie jego migawki. Oba te elementy można usunąć jednocześnie za pomocą Delete Blob
operacji .
Żądanie
Żądanie można skonstruować Delete Blob
w następujący sposób. Zalecane jest użycie protokołu HTTPS. Zastąp ciąg myaccount nazwą konta magazynu.
Identyfikator URI żądania DELETE | Wersja PROTOKOŁU 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 |
Identyfikator URI usługi magazynu emulowanego
Po wysłaniu żądania względem emulowanej usługi magazynu określ nazwę hosta emulatora i Azure Blob Storage port jako 127.0.0.1:10000
, a następnie nazwę emulowanego konta magazynu.
Identyfikator URI żądania DELETE | Wersja PROTOKOŁU HTTP |
---|---|
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob |
HTTP/1.1 |
Aby uzyskać więcej informacji, zobacz Use Azurite emulator for local Azure Storage development (Używanie emulatora Azurite do lokalnego programowania w usłudze Azure Storage).
Parametry identyfikatora URI
Dla identyfikatora URI żądania można określić następujące dodatkowe parametry.
Parametr | Opis |
---|---|
snapshot |
Opcjonalny. Parametr migawki jest nieprzezroczystą DateTime wartością, która w chwili obecnej określa migawkę obiektu blob do usunięcia. Aby uzyskać więcej informacji na temat pracy z migawkami obiektów blob, zobacz Tworzenie migawki obiektu blob. |
versionid |
Opcjonalnie, wersja 2019-12-12 lub nowsza. Parametr versionid jest nieprzezroczystą DateTime wartością, która w chwili obecnej określa wersję obiektu blob do usunięcia. |
timeout |
Opcjonalny. Parametr jest wyrażony timeout w sekundach. Aby uzyskać więcej informacji, zobacz Ustawianie limitów czasu dla operacji usługi Blob Storage. |
deletetype |
Opcjonalnie, wersja 2020-02-10 lub nowsza. Wartość deletetype może mieć permanent wartość tylko . |
Nagłówki żądań
W poniższej tabeli opisano wymagane i opcjonalne nagłówki żądań.
Nagłówek żądania | Opis |
---|---|
Authorization |
Wymagane. Określa schemat autoryzacji, nazwę konta i podpis. Aby uzyskać więcej informacji, zobacz Autoryzowanie żądań do usługi Azure Storage. |
Date lub x-ms-date |
Wymagane. Określa dla żądania godzinę w formacie uniwersalnego czasu koordynowanego (UTC). Aby uzyskać więcej informacji, zobacz Autoryzowanie żądań do usługi Azure Storage. |
x-ms-version |
Wymagane dla wszystkich autoryzowanych żądań. Aby uzyskać więcej informacji, zobacz Przechowywanie wersji dla usług Azure Storage. |
x-ms-lease-id:<ID> |
Wymagane, jeśli obiekt blob ma aktywną dzierżawę. Aby wykonać tę operację na obiekcie blob z aktywną dzierżawą, określ prawidłowy identyfikator dzierżawy dla tego nagłówka. Jeśli prawidłowy identyfikator dzierżawy nie zostanie określony w żądaniu, operacja zakończy się niepowodzeniem z kodem stanu 403 (Zabronione). |
x-ms-delete-snapshots: {include, only} |
Wymagane, jeśli obiekt blob ma skojarzone migawki. Określ jedną z następujących opcji: - include : usuń podstawowy obiekt blob i wszystkie jego migawki.- only : usuwa tylko migawki obiektu blob, a nie sam obiekt blob.Określ ten nagłówek tylko dla żądania względem zasobu podstawowego obiektu blob. Jeśli ten nagłówek jest określony w żądaniu usunięcia pojedynczej migawki, usługa Blob Storage zwraca kod stanu 400 (nieprawidłowe żądanie). Jeśli ten nagłówek nie jest określony w żądaniu, a obiekt blob ma skojarzone migawki, usługa Blob Storage zwraca kod stanu 409 (Konflikt). |
x-ms-client-request-id |
Opcjonalny. Zapewnia nieprzezroczystą wartość wygenerowaną przez klienta z limitem znaków 1-kibibyte (KiB) rejestrowanym w dziennikach podczas konfigurowania rejestrowania. Zdecydowanie zalecamy używanie tego nagłówka do korelowania działań po stronie klienta z żądaniami odbieranymi przez serwer. Aby uzyskać więcej informacji, zobacz Monitorowanie Azure Blob Storage. |
Ta operacja obsługuje również używanie nagłówków warunkowych do usuwania obiektu blob tylko wtedy, gdy zostanie spełniony określony warunek. Aby uzyskać więcej informacji, zobacz Określanie nagłówków warunkowych dla operacji usługi Blob Storage.
Treść żądania
Brak.
Reakcja
Odpowiedź zawiera kod stanu HTTP i zestaw nagłówków odpowiedzi.
Kod stanu
Operacja zakończona powodzeniem zwraca kod stanu 202 (Zaakceptowano). Aby uzyskać informacje o kodach stanu, zobacz Kody stanu i błędów.
Nagłówki odpowiedzi
Odpowiedź na tę operację zawiera następujące nagłówki. Odpowiedź może również zawierać dodatkowe standardowe nagłówki HTTP. Wszystkie standardowe nagłówki są zgodne ze specyfikacją protokołu HTTP/1.1.
Nagłówek odpowiedzi | Opis |
---|---|
x-ms-request-id |
Ten nagłówek jednoznacznie identyfikuje wykonane żądanie i może służyć do rozwiązywania problemów z żądaniem. Aby uzyskać więcej informacji, zobacz Rozwiązywanie problemów z operacjami interfejsu API. |
x-ms-version |
Wskazuje wersję usługi Blob Storage używaną do uruchomienia żądania. Ten nagłówek jest zwracany w przypadku żądań wysyłanych w wersji 2009-09-19 lub nowszej. |
x-ms-delete-type-permanent |
W przypadku wersji 2017-07-29 lub nowszej usługa Blob Storage zwraca true informację, czy obiekt blob został trwale usunięty i false czy obiekt blob został usunięty nietrwale. |
Date |
Wartość daty/godziny UTC wskazująca godzinę, o której zainicjowano odpowiedź. Usługa generuje tę wartość. |
x-ms-client-request-id |
Ten nagłówek służy do rozwiązywania problemów z żądaniami i odpowiadającymi im odpowiedziami. Wartość tego nagłówka jest równa wartości nagłówka x-ms-client-request-id , jeśli jest obecna w żądaniu. Wartość jest najwyżej 1024 widocznymi znakami ASCII. x-ms-client-request-id Jeśli nagłówek nie istnieje w żądaniu, ten nagłówek nie będzie obecny w odpowiedzi. |
Autoryzacja
Autoryzacja jest wymagana podczas wywoływania dowolnej operacji dostępu do danych w usłudze Azure Storage. Możesz autoryzować operację Delete Blob
zgodnie z poniższym opisem.
Usługa Azure Storage obsługuje autoryzację żądań do danych obiektów blob przy użyciu Tożsamość Microsoft Entra. Dzięki Tożsamość Microsoft Entra możesz użyć kontroli dostępu opartej na rolach (RBAC) platformy Azure, aby udzielić uprawnień podmiotowi zabezpieczeń. Podmiot zabezpieczeń może być użytkownikiem, grupą, jednostką usługi aplikacji lub tożsamością zarządzaną platformy Azure. Podmiot zabezpieczeń jest uwierzytelniany przez Tożsamość Microsoft Entra w celu zwrócenia tokenu OAuth 2.0. Token może następnie służyć do autoryzowania żądania względem usługi Blob Service.
Aby dowiedzieć się więcej na temat autoryzacji przy użyciu Tożsamość Microsoft Entra, zobacz Autoryzowanie dostępu do obiektów blob przy użyciu Tożsamość Microsoft Entra.
Uprawnienia
Poniżej przedstawiono akcję RBAC niezbędną do wywołania Delete Blob
operacji przez użytkownika, grupę lub jednostkę usługi Microsoft Entra oraz najmniej uprzywilejowaną wbudowaną rolę RBAC platformy Azure obejmującą tę akcję:
- Akcja RBAC platformy Azure:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete
- Najmniej uprzywilejowana wbudowana rola:Współautor danych obiektu blob usługi Storage
Aby dowiedzieć się więcej na temat przypisywania ról przy użyciu kontroli dostępu opartej na rolach platformy Azure, zobacz Przypisywanie roli platformy Azure w celu uzyskania dostępu do danych obiektów blob.
Uwagi
Jeśli obiekt blob ma aktywną dzierżawę, klient musi określić prawidłowy identyfikator dzierżawy w żądaniu, aby go usunąć.
Jeśli obiekt blob ma dużą liczbę migawek, istnieje możliwość przekroczenia limitu Delete Blob
czasu operacji. W takim przypadku klient powinien ponowić żądanie.
W przypadku wersji 2013-08-15 lub nowszej klient może wywołać wywołanie Delete Blob
w celu usunięcia niezatwierdzonych obiektów blob. Niezatwierdzony obiekt blob to obiekt blob, który został utworzony z wywołaniami operacji Put Block, ale nigdy nie został zatwierdzony przy użyciu operacji Umieszczanie listy blokowej. W przypadku wcześniejszych wersji klient musi najpierw zatwierdzić obiekt blob przed jego usunięciem.
Wyłączono funkcję usuwania nietrwałego
Po pomyślnym usunięciu obiektu blob natychmiast zostanie on usunięty z indeksu konta magazynu i nie będzie już dostępny dla klientów. Dane obiektu blob zostaną później usunięte z usługi podczas odzyskiwania pamięci.
Włączono funkcję usuwania nietrwałego
Po pomyślnym usunięciu obiektu blob jest on usuwany nietrwale i nie jest już dostępny dla klientów. Usługa Blob Storage zachowuje obiekt blob lub migawkę przez liczbę dni określoną dla DeleteRetentionPolicy
właściwości usługi Blob Storage. Aby uzyskać informacje o odczytywaniu właściwości usługi Blob Storage, zobacz Ustawianie właściwości usługi Blob Storage.
Po określonej liczbie dni dane obiektu blob zostaną usunięte z usługi podczas odzyskiwania pamięci. Dostęp do nietrwałego obiektu blob lub migawki można uzyskać, wywołując operację Wyświetlanie obiektów blob i określanie include=deleted
opcji.
Można przywrócić nietrwale usunięte obiekty blob lub migawki za pomocą polecenia Cofanie usuwania obiektu blob. W przypadku każdej innej operacji na obiektach blob usuniętych nietrwale lub migawkach usługa Blob Storage zwraca błąd 404 (Nie znaleziono zasobu).
Usuwanie trwałe
W wersji 2020-02-10 lub nowszej można trwale usunąć nietrwale usuniętą migawkę lub wersję. W tym celu należy włączyć tę funkcję. Aby uzyskać więcej informacji, zobacz Ustawianie właściwości usługi Blob Storage.
Uwaga
Konto magazynu musi mieć włączoną obsługę wersji lub migawki. Usuwanie nietrwałe musi być również włączone na koncie magazynu w celu usunięcia nietrwałego wersji lub migawek obiektów blob na koncie. Trwałe usuwanie usuwa tylko nietrwale usunięte migawki lub wersje.
Konta magazynu z włączonym trwałym usuwaniem mogą używać parametru deletetype=permanent
zapytania do trwałego usuwania migawki lub usuniętej wersji obiektu blob.
Jeśli parametr zapytania przedstawia dowolny z następujących elementów, usługa Blob Storage zwraca błąd 409 (konflikt):
- Funkcja trwałego usuwania nie jest włączona dla konta magazynu.
versionid
snapshot
Ani nie są udostępniane.- Określona migawka lub wersja nie jest usuwana nietrwale.
Trwałe usuwanie obejmuje również uprawnienie sygnatury dostępu współdzielonego w celu trwałego usunięcia migawki obiektu blob lub wersji obiektu blob. Aby uzyskać więcej informacji, zobacz Tworzenie sygnatury dostępu współdzielonego usługi.
Rozliczenia
Konta magazynu nie są naliczane za Delete Blob
żądania.
Zobacz też
Autoryzowanie żądań do usługi Azure Storage
Kody błędów usługi Blob Storage