Usuwanie obiektu blob
Operacja Delete Blob
usuwa określony obiekt blob lub migawkę.
Należy pamiętać, że aby usunąć obiekt blob, należy usunąć wszystkie jego migawki. Oba można usunąć jednocześnie za Delete Blob
pomocą 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 usługi Azurite do lokalnego programowania w usłudze Azure Storage).
Parametry identyfikatora URI
W identyfikatorze URI żądania można określić następujące dodatkowe parametry.
Parametr | Opis |
---|---|
snapshot |
Opcjonalny. Parametr migawki jest nieprzezroczystą DateTime wartością określającą 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ą określającą 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ść może deletetype być permanent 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 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 jest określony w żądaniu, operacja koń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 : Usuń tylko migawki obiektu blob, a nie samego obiektu blob.Określ ten nagłówek tylko dla żądania względem podstawowego zasobu obiektu blob. Jeśli ten nagłówek jest określony na żądanie 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. Udostępnia nieprzezroczystą wartość wygenerowaną przez klienta z limitem znaków 1-kibibyte (KiB), który jest rejestrowany 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 spełniony jest 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 Stan i kody 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 nagłówki standardowe 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 dla żą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 wartość true , jeśli obiekt blob został trwale usunięty, a false obiekt blob został usunięty nietrwale. |
Date |
Wartość daty/godziny UTC wskazująca godzinę, w 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 x-ms-client-request-id nagłówka, jeśli jest obecna w żądaniu. Wartość wynosi co najwyżej 1024 widoczne znaki ASCII.
x-ms-client-request-id Jeśli nagłówek nie znajduje się 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ę zgodnie z Delete Blob
poniższym opisem.
Ważne
Firma Microsoft zaleca używanie Tożsamość Microsoft Entra z tożsamościami zarządzanymi w celu autoryzowania żądań do usługi Azure Storage. Tożsamość Microsoft Entra zapewnia doskonałe zabezpieczenia i łatwość użycia w porównaniu z autoryzacją klucza współdzielonego.
Usługa Azure Storage obsługuje używanie Tożsamość Microsoft Entra do autoryzacji żądań do danych obiektów blob. Za pomocą 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 Microsoft Entra użytkownika, grupy, tożsamości zarządzanej lub jednostki usługi w celu wywołania Delete Blob
operacji oraz najmniej uprzywilejowanej wbudowanej roli RBAC platformy Azure, która obejmuje tę akcję:
- Akcja RBAC platformy Azure:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete
- Rola wbudowana z najmniejszymi uprawnieniami: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, możliwe, że Delete Blob
operacja upłynął limit czasu. W takim przypadku klient powinien ponowić próbę żądania.
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 jest już dostępny dla klientów.
Włączono funkcję usuwania nietrwałego
Gdy obiekt blob zostanie pomyślnie usunięty, zostanie usunięty 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 na temat odczytywania 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. Dostęp do nietrwałego obiektu blob lub migawki można uzyskać, wywołując operację List Blobs i określając include=deleted
opcję.
Można przywrócić nietrwałe obiekty blob lub migawki, używając polecenia Cofanie obiektu blob. W przypadku każdej innej operacji na nietrwale usuniętych obiektach blob 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ąć nietrwałą migawkę lub wersję. W tym celu włączysz tę funkcję. Aby uzyskać więcej informacji, zobacz Ustawianie właściwości usługi Blob Storage.
Uwaga
Konto magazynu musi mieć włączone przechowywanie wersji lub migawki. Usuwanie nietrwałe musi być również włączone na koncie magazynu w celu usuwania nietrwałego wersji lub migawek obiektów blob na koncie. Trwałe usuwanie usuwa tylko nietrwałe migawki lub wersje.
Konta magazynu z włączonym trwałym usuwaniem mogą używać parametru deletetype=permanent
zapytania do trwałego usuwania nietrwałej 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.
- Ani
versionid
snapshot
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, aby trwale usunąć migawkę obiektu blob lub wersję obiektu blob. Aby uzyskać więcej informacji, zobacz Twórca sygnaturę dostępu współdzielonego usługi.
Rozliczenia
Opłaty za żądania nie są naliczane za Delete Blob
konta magazynu.
Zobacz też
Autoryzowanie żądań do usługi Azure Storage
Kody błędów usługi Blob Storage