Pobierz Blob Layout

Operacja Get Blob Layout zwraca wszystkie metadane zdefiniowane przez użytkownika, standardowe właściwości HTTP i właściwości systemowe obiektu blob. Dodatkowo może opcjonalnie zwracać układ bloba. Układ blobu to podzasób bloba, który zawiera podział wszystkich zakresów w blobie, z punktem końcowym (adresem), z którego ten zakres można odczytać, dając wskazówki, jak najlepiej zrównoleglić odczyty.

Dzięki temu API możesz zoptymalizować operację pobierania, wykonując następujące dwa kroki:

  1. Odkrywanie układu: Wywołanie Get Blob Layout , aby pobrać właściwości bloba i odkryć jego rozkład danych.
  2. Równolegle Get Blob: Wywołaj Get Blob równolegle wszystkie zakresy blobów, które Cię interesują, używając punktów końcowych zwróconych z układu blobów, aby kierować te żądania do optymalnej lokalizacji.

Żądanie

Żądanie Get Blob Layout można skonstruować w następujący sposób. Zalecamy używanie protokołu HTTPS. Zastąp myaccount nazwą swojego konta pamięci:

GET method request URI Wersja protokołu HTTP
https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=layout

https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=layout&snapshot=<DateTime>

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

https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=layout&versionid=<DateTime>&marker=<ContinuationToken>&maxresults=1000
HTTP/1.0

HTTP/1.1

Parametry identyfikatora URI

Dla identyfikatora URI żądania można określić następujące dodatkowe parametry:

Parametr Description
snapshot Optional. Parametr migawki jest nieprzezroczystą DateTime wartością, która, gdy jest obecna, określa migawkę obiektu blob do pobrania. Więcej informacji o pracy z migawkami blobów znajdziesz w artykule Utwórz migawkę blobów.
versionid Optional. Parametr versionid jest nieprzezroczystą DateTime wartością, która, gdy jest obecna, określa wersję obiektu blob do pobrania.
marker Optional. Token kontynuacji zwrócony przez poprzednie Get Blob Layout żądanie. Użyj tego tokena, aby pobrać kolejny zestaw zakresów. Marker służy do wznowienia paginacji, gdy odpowiedź nie obejmuje wszystkich zakresów dla bloba lub określonego zakresu. Jeśli używany jest znacznik, If-Match nagłówek musi być również dołączony do Etagu z poprzedniego żądania. Aby uzyskać więcej informacji o użyciu nagłówkaIf-Match, zobacz Określ nagłówki warunkowe dla operacji Blob Storage. Dodatkowo, jeśli poprzednie żądanie zawierało nagłówek lub Range (or x-ms-range header), to żądanie musi również zawierać identyczny nagłówek. Jeśli ostatnie żądanie nie zawierało nagłówka zakresu, to również nie powinno go zawierać.
maxresults Optional. Maksymalna liczba zakresów do zwrócenia w odpowiedzi. API nigdy nie zwróci więcej zakresów niż wartość określona przez maxresults.
timeout Optional. Parametr timeout jest wyrażony w sekundach. Aby uzyskać więcej informacji, zobacz Ustawianie limitów czasu dla operacji usługi Blob Storage.

Nagłówki żądań

W poniższej tabeli opisano wymagane i opcjonalne nagłówki żądań.

Nagłówek żądania Description
Authorization Required. 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 Required. Określa uniwersalny czas koordynowany (UTC) dla żądania. Aby uzyskać więcej informacji, zobacz Autoryzowanie żądań do usługi Azure Storage.
x-ms-version Required. Określa wersję operacji do użycia dla tego żądania. Get Blob Layout jest obsługiwany tylko w wersji 2026-02-06 lub nowszych. Aby uzyskać więcej informacji, zobacz Przechowywanie wersji usług Azure Storage.
Range lub x-ms-range Optional. Zwracaj metadane tylko dla określonych zakresów. Jeśli oba Range są określone i x-ms-range , usługa używa wartości x-ms-range. Jeśli żaden z nich nie jest określony, metadane zwracane są dla całego bloba. Więcej informacji można znaleźć w artykule Określ nagłówek zakresu dla operacji Blob Storage.
x-ms-lease-id: <ID> Optional. Jeśli ten nagłówek jest określony, operacja jest wykonywana tylko wtedy, gdy spełnione są oba następujące warunki:

- Umowa najmu bloba jest obecnie aktywna.
- ID umowy najmu podanej w żądaniu odpowiada identyfikatorowi umowy typu blob.

Jeśli którykolwiek z tych warunków nie zostanie spełniony, żądanie zakończy się niepowodzeniem, a Get Blob Layout operacja zakończy się niepowodzeniem z kodem stanu 412 (Warunek wstępny nie powiódł się).
x-ms-upn Optional. Ważne dla kont z włączoną hierarchiczną przestrzenią nazw. Jeśli to prawda, wartości identyfikatora użytkownika zwracane w nagłówkach x-ms-owner, x-ms-group, i x-ms-acl odpowiedzi zostaną przekształcone z identyfikatorów obiektów Microsoft Entra na nazwy głównych użytkowników. Jeśli wartość jest fałszywa, zwraca się je jako identyfikatory obiektów Microsoft Entra. Domyślna wartość to false. Należy zauważyć, że identyfikatory obiektów grup i aplikacji nie są tłumaczone, ponieważ nie mają unikalnych, przyjaznych nazw.
x-ms-client-request-id Optional. Zapewnia nieprzejrzystą wartość generowaną przez klienta z limitem znaków wynoszącym 1 kibibajt (KiB), który jest zapisywany w logach analitycznych po włączeniu logowania analityki pamięci masowej. Gorąco zalecamy używanie tego nagłówka podczas korelowania działań po stronie klienta z żądaniami otrzymywanymi przez serwer. Więcej informacji można znaleźć w sekcji O logowaniu Azure analityka magazynu.

Operacja ta obsługuje również użycie warunkowych nagłówków do zwracania układu i właściwości blobów tylko wtedy, gdy spełniony jest określony warunek. Więcej informacji można znaleźć w artykule Określ nagłówki warunkowe dla operacji Blob Storage. Należy zauważyć, że nagłówek jest wymagany If-Match , gdy a marker jest używane w parametrach URI.

Nagłówki żądań (klucze szyfrowania dostarczone przez klienta)

Możesz określić następujące nagłówki na żądaniu, aby odczytać blob zaszyfrowany kluczem dostarczonym przez klienta. Szyfrowanie za pomocą klucza dostarczonego przez klienta (oraz odpowiadającego mu zestawu nagłówków) jest opcjonalne. Jeśli blob był wcześniej szyfrowany kluczem dostarczonym przez klienta, musisz uwzględnić te nagłówki w żądaniu, aby operacja mogła zostać pomyślnie zakończona.

Nagłówek żądania Description
x-ms-encryption-key Required. Klucz szyfrujący AES-256 zakodowany w Base64.
x-ms-encryption-key-sha256 Optional. Hash SHA256 zakodowany w Base64 klucza szyfrującego.
x-ms-encryption-algorithm: AES256 Required. Określa algorytm do szyfrowania. Wartość tego nagłówka musi mieć wartość AES256.

Treść żądania

None.

Odpowiedź

Odpowiedź zawiera kod statusu HTTP, zestaw nagłówków odpowiedzi oraz opcjonalnie treść odpowiedzi zawierającą układ blob w formacie XML.

Kod stanu

Udana operacja zwraca jeden z dwóch kodów statusu:

  • HTTP 200 (OK), jeśli odpowiedź zawiera układ blob w treści.
  • HTTP 204 (No Content), jeśli serwer nie zwrócił układu w ciele odpowiedzi. W tym przypadku API jest funkcjonalnie równoważne .Get Blob Properties

Aby uzyskać więcej informacji na temat kodów stanu, zobacz Stan i kody błędów.

Nagłówki odpowiedzi

Odpowiedź dla tej operacji 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 Description
Content-Type Określa format, w jakim wyniki są zwracane w ciele odpowiedzi. Wartość dotyczy application/xml zwrotu ciała.
Content-Length Wskazuje rozmiar ciała odpowiedzi, jeśli zostanie zwrócony.
Last-Modified Data/godzina, kiedy blob został ostatnio zmodyfikowany. Format daty jest zgodny ze standardem RFC 1123. Aby uzyskać więcej informacji, zobacz Reprezentowanie wartości daty/godziny w nagłówkach.

Każda operacja, która modyfikuje obiekt blob, w tym aktualizacja metadanych lub właściwości obiektu blob, zmienia czas ostatniej modyfikacji obiektu blob.
x-ms-creation-time Data/godzina powstania bloba. Format daty jest zgodny ze standardem RFC 1123. Aby uzyskać więcej informacji, zobacz Reprezentowanie wartości daty/godziny w nagłówkach.
x-ms-meta-name:value Zestaw par nazwa-wartość, które odpowiadają metadanym zdefiniowanym przez użytkownika skojarzonym z tym obiektem blob.
x-ms-tag-count Jeśli obiekt blob ma jakiekolwiek tagi, zwraca liczbę tagów przechowywanych w obiekcie blob. Ten nagłówek nie jest zwracany, jeśli w obiekcie blob nie ma żadnych tagów.
ETag Zawiera wartość, którą możesz użyć do wykonywania operacji warunkowo. Więcej informacji można znaleźć w artykule Określ nagłówki warunkowe dla operacji Blob Storage. Wartość ETag jest ujęta w cudzysłów.
x-ms-copy-completion-time:<datetime> Czas zakończenia ostatniej próby Copy Blob operacji, w której ten obiekt blob był docelowym obiektem blob. Ta wartość może określać czas ukończenia, przerwania lub nieudanej próby kopiowania. Ten nagłówek nie jest wyświetlany, jeśli kopia jest oczekująca, jeśli ten obiekt blob nigdy nie był miejscem docelowym w Copy Blob operacji lub jeśli ten obiekt blob został zmodyfikowany po zakończeniu Copy Blob operacji, która używa Set Blob Properties, Put Blob, lub Put Block List.
x-ms-copy-status-description: <error string> Pojawia się tylko wtedy, gdy x-ms-copy-status jest lub failedpending. Opisuje przyczynę błędu operacji kopiowania krytycznego lub niekrytycznego. Ten nagłówek nie jest wyświetlany, jeśli ten obiekt blob nigdy nie był miejscem docelowym w Copy Blob operacji lub jeśli ten obiekt blob został zmodyfikowany po zakończeniu Copy Blob operacji, która używa Set Blob Properties, Put Bloblub Put Block List.
x-ms-copy-id: <id> Identyfikator ciągu dla ostatniej próby Copy Blob operacji, gdzie ten obiekt blob był docelowym obiektem blob. Ten nagłówek nie jest wyświetlany, jeśli ten obiekt blob nigdy nie był miejscem docelowym w Copy Blob operacji lub jeśli ten obiekt blob został zmodyfikowany po zakończeniu Copy Blob operacji, która używa Set Blob Properties, Put Bloblub Put Block List.
x-ms-copy-progress: <bytes copied/bytes total> Zawiera liczbę skopiowanych bajtów i łączną liczbę bajtów w źródle w ostatniej próbie Copy Blob operacji, gdzie ten obiekt blob był docelowym obiektem blob. Może pokazywać od 0 do Content-Length skopiowanych bajtów. Ten nagłówek nie jest wyświetlany, jeśli ten obiekt blob nigdy nie był miejscem docelowym w Copy Blob operacji lub jeśli ten obiekt blob został zmodyfikowany po zakończeniu Copy Blob operacji, która używa Set Blob Properties, Put Bloblub Put Block List.
x-ms-copy-source: url Adres URL o długości do 2 KiB, który określa źródłowy obiekt blob, który został użyty w ostatniej próbie Copy Blob operacji, gdzie ten obiekt blob był docelowym obiektem blob. Ten nagłówek nie jest wyświetlany, jeśli ten obiekt blob nigdy nie był miejscem docelowym w Copy Blob operacji lub jeśli ten obiekt blob został zmodyfikowany po zakończeniu Copy Blob operacji, która używa Set Blob Properties, Put Bloblub Put Block List.

URL zwracany w tym nagłówku zawiera wszelkie parametry żądania użyte podczas kopiowania na źródłowym blobie. Jeśli adres URL zawiera token Shared Access Signature (SAS), podpis (sig parametr) nie zostanie uwzględniony.
x-ms-copy-status: <pending \| success \| aborted \| failed> Stan operacji kopiowania identyfikowany przez x-ms-copy-id z następującymi wartościami:

- success: Kopia zakończona pomyślnie.
- pending: Kopia jest w trakcie realizacji. Sprawdź x-ms-copy-status-description , czy sporadyczne, niekrytyczne błędy utrudniają postęp kopiowania, ale nie powodują awarii.
- aborted: Kopia zakończyła się przez Abort Copy Blob.
- failed: Kopia nie powiodła. Zobacz x-ms-copy-status-description szczegółowe informacje o awarii.

Ten nagłówek nie jest wyświetlany, jeśli ten obiekt blob nigdy nie był miejscem docelowym w Copy Blob operacji lub jeśli ten obiekt blob został zmodyfikowany po zakończeniu Copy Blob operacji, która używa Set Blob Properties, Put Bloblub Put Block List.
x-ms-incremental-copy: true Uwzględnione, jeśli obiekt blob jest przyrostowym obiektem blob kopiowania.
x-ms-copy-destination-snapshot:<datetime> Uwzględnione, jeśli obiekt blob jest przyrostowym obiektem blob kopii lub migawką kopii przyrostowej, jeśli x-ms-copy-status zakończy się pomyślnie. Czas migawki ostatniej pomyślnej migawki kopii przyrostowej dla tego obiektu blob.
x-ms-lease-duration: <infinite \| fixed> Gdy obiekt blob jest dzierżawiony, określa, czy dzierżawa ma nieskończony, czy stały czas trwania.
x-ms-lease-state: <available \| leased \| expired \| breaking \| broken> Stan dzierżawy bloba.
x-ms-lease-status:<locked\| unlocked> Stan dzierżawy obiektu blob.
Cache-Control Cache-Control Jeśli nagłówek żądania został wcześniej ustawiony dla obiektu blob, ta wartość jest zwracana w tym nagłówku.
x-ms-request-id Ten nagłówek jednoznacznie identyfikuje wysłane żądanie i można go użyć do rozwiązania problemu 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, która jest używana do wykonania żądania.
Accept-Ranges: bytes Wskazuje, że usługa obsługuje żądania częściowej zawartości obiektu blob.
x-ms-server-encrypted: true/false Wartość tego nagłówka jest ustawiona na true Jeśli dane obiektu blob i metadane aplikacji są całkowicie zaszyfrowane przy użyciu określonego algorytmu. W przeciwnym razie wartość jest ustawiona na false (gdy obiekt blob jest niezaszyfrowany lub jeśli szyfrowane są tylko części metadanych obiektu blob/aplikacji).
x-ms-encryption-key-sha256 Ten nagłówek jest zwracany, jeśli blob jest szyfrowany kluczem dostarczonym przez klienta.
x-ms-encryption-context Jeśli właściwość kontekstu szyfrowania zostanie ustawiona, zwróci wartość zestawu. Prawidłowe tylko wtedy, gdy dla konta jest włączona hierarchiczna przestrzeń nazw.
x-ms-encryption-scope Ten nagłówek jest zwracany, jeśli blob jest szyfrowany za pomocą zakresu szyfrowania.
x-ms-access-tier Tier blokowego bloba w kontach Blob Storage lub uniwersalnych v2. Prawidłowe wartości to Hot, , CoolColdSmart i .Archive Szczegółowe informacje o standardowym poziomowaniu bloków na kontach blob znajdziesz w artykule Poziomy przechowywania blobów.
x-ms-smart-access-tier Ten nagłówek zwracany jest tylko dla żądań złożonych przeciwko blobom w Smart tierze. Prawidłowe wartości to Hot, Cool i Cold. Szczegółowe informacje o standardowym poziomowaniu bloków na kontach blob znajdziesz w artykule Poziomy pamięci Blob.
x-ms-archive-status Dla pamięci blob lub ogólnego przeznaczenia w wersji v2 poprawne wartości to rehydrate-pending-to-hot, rehydrate-pending-to-cool, oraz rehydrate-pending-to-cold. Jeśli obiekt blob jest ponownie wypełniany i jest niekompletny, zwracany jest ten nagłówek, który zarówno wskazuje, że ponowne wypełnianie jest oczekujące, jak i wyświetla warstwę docelową. Szczegółowe informacje o standardowym tierowaniu bloków na poziomie blob konta można znaleźć w artykule Poziomy pamięci do tablic.
x-ms-access-tier-change-time Wskazuje czas ostatniej zmiany warstwy w obiekcie. Ten nagłówek jest zwracany tylko wtedy, gdy kiedykolwiek ustawiono warstwę w blokowym obiekcie blob. Format daty jest zgodny ze standardem RFC 1123. Aby uzyskać więcej informacji, zobacz Reprezentowanie wartości daty/godziny w nagłówkach. Więcej informacji o standardowym poziomowaniu bloków na poziomie bloku konta blob znajdziesz w artykule Poziomy pamięci do tablic (Blob storage).
x-ms-rehydrate-priority Jeśli obiekt jest w stanie oczekiwania na ponowne wypełnianie, ten nagłówek jest zwracany z priorytetem ponownego wypełniania. Prawidłowe wartości to High/Standard. Szczegółowe informacje o standardowym poziomowaniu bloków na kontach blob znajdziesz w artykule Poziomy pamięci Blob.
x-ms-or-{policy-id}_{rule-id} Zwracałem tylko po blokowe plamy. policy-id to wartość identyfikatora GUID reprezentująca identyfikator zasad replikacji obiektów na koncie magazynu. rule-id to wartość identyfikatora GUID reprezentująca identyfikator reguły zasad w kontenerze obiektów blob. Jeśli konto ma wartość ObjectReplication-enabled, wartość tego nagłówka reprezentuje stan replikacji obiektu blob z podanymi identyfikatorami zasad i reguł, albo complete .failed
x-ms-or-policy-id Zwracałem tylko po blokowe plamy. Jeśli konto ma wartość ObjectReplication-enabled, wartość tego nagłówka reprezentuje zasady rządzące replikacją.
x-ms-last-access-time Wskazuje, kiedy ostatnio dostęp do danych bloba był na podstawie polityki śledzenia czasu ostatniego dostępu konta magazynowego. Nagłówek nie jest zwracany, jeśli konto magazynu nie ma zasad śledzenia czasu ostatniego dostępu lub zasady są wyłączone. Aby uzyskać informacje na temat ustawiania zasad śledzenia czasu ostatniego dostępu konta magazynu, zobacz Interfejs API usługi Blob Storage.
x-ms-blob-sealed Zwracał tylko dla dodanych plamek. Jeśli uzupełnialny obiekt blob został zapieczętowany, wartość będzie prawdziwa. Więcej informacji można znaleźć w artykule Dodaj Pieczęć Zbliżona
x-ms-immutability-policy-until-date Określa datę "przechowywania do" ustawioną w obiekcie blob. To jest data, do której blob może być chroniony przed modyfikacją lub usunięciem. Zwraca się tylko wtedy, gdy na blobie ustawiona jest polityka niezmienności. Wartość tego nagłówka jest RFC1123 formatu.
x-ms-immutability-policy-mode: unlocked/locked Tryb zasad niezmienności zwracany, jeśli zasada niezmienności jest ustawiona w obiekcie blob. Wartości to unlocked/locked. unlocked Wskazuje, że użytkownik może zmienić zasady, zwiększając lub zmniejszając datę przechowywania do. locked wskazuje, że takie działania są zabronione.
x-ms-legal-hold: true/false Ten nagłówek nie jest zwracany, jeśli nie ma archiwizacji prawnej obiektu blob. Wartość tego nagłówka jest ustawiona na true , jeśli obiekt blob zawiera blokadę prawną, a jego wartość to true. W przeciwnym razie wartość jest ustawiana na false, jeśli obiekt blob zawiera archiwizację ze względów prawnych, a jego wartość false.
x-ms-owner Tylko dla kont z włączoną hierarchiczną przestrzenią nazw. Zwraca użytkownika będącego właścicielem pliku lub katalogu.
x-ms-group Tylko dla kont z włączoną hierarchiczną przestrzenią nazw. Zwraca grupę właścicieli pliku lub katalogu.
x-ms-permissions Tylko dla kont z włączoną hierarchiczną przestrzenią nazw. Zwraca uprawnienia ustawione dla użytkownika, grupy i innych osób w pliku lub katalogu. Każde indywidualne zezwolenie jest w [r,w,x,-]{3} formacie.
x-ms-acl Tylko dla kont z włączoną hierarchiczną przestrzenią nazw. Zwraca łączną listę dostępu i domyślnej listy kontroli dostępu ustawionej dla użytkownika, grupy i innych w pliku lub katalogu. Każdy wpis kontroli dostępu (ACE) składa się z zakresu, typu, identyfikatora użytkownika lub grupy oraz uprawnień w formacie [scope]:[type]:[id]:[permissions]. Zakres wskazuje, default że ACE należy do domyślnego ACL dla katalogu; w przeciwnym razie zakres jest domyślny, a ACE należy do ACL dostępu. Każde indywidualne zezwolenie jest w [r,w,x,-]{3} formacie.
x-ms-resource-type Tylko w przypadku kont z włączoną hierarchiczną przestrzenią nazw. Zwraca typ zasobu dla ścieżki, który może być albo file albo directory.
x-ms-expiry-time Tylko w przypadku kont z włączoną hierarchiczną przestrzenią nazw. Zwraca czas wygaśnięcia ustawiony w obiekcie blob. Jest zwracany tylko dla plików, które mają ustawiony czas wygaśnięcia.

Treść odpowiedzi

Gdy kod statusu odpowiedzi to HTTP 200 (OK), ciało odpowiedzi zawiera układ blob w formacie XML. Format odpowiedzi jest następujący:

<?xml version="1.0" encoding="utf-8"?>
<BlobLayout>
    <Ranges>
        <Range Start="0" End="1023" EndpointIndex="0" />
        <Range Start="1024" End="4096" EndpointIndex="1" />
    </Ranges>
    <Endpoints>
        <Endpoint Index="0" Value="host1:port" />
        <Endpoint Index="1" Value="host2:port" />
    </Endpoints>
    <NextMarker>marker</NextMarker>
    <MaxResults>2</MaxResults>
</BlobLayout>

Odpowiedź XML zawiera następujące elementy:

  • Zakresy: Zawiera listę elementów zakresu, z których każdy określa ciągły zakres bajtów w blobie z przypisanym indeksem końcowym.

    • Zakres: Reprezentuje ciągły zakres bajtów w blobie.
      • Start: Przesunięcie bajtu początkowego zakresu (włącznie).
      • End: Przesunięcie bajtu końcowego zakresu (włącznie).
      • EndpointIndex: Indeks endpointu z listy Endpoints, z którego należy odczytać ten zakres.
  • Endpoints: Zawiera listę elementów Endpoint, z których każdy określa punkt końcowy usługi.

    • Endpoint: Reprezentuje punkt końcowy usługi, z którego można odczytać zakresy blobów.
      • Indeks: Indeks tego punktu końcowego, odwołany przez elementy zakresu.
      • Wartoś: Nazwa hosta DNS i port w formacie hostname:port. To jest punkt końcowy usługi, z którego powinieneś dalej czytać.
  • NextMarker: Token kontynuacji używany w kolejnym Get Blob Layout żądaniu pobrania kolejnego zestawu zakresów. Ten element występuje tylko wtedy, gdy istnieją dodatkowe odległości do odzyskania.

  • MaxResults: Maksymalna liczba zakresów żądanych w wywołaniu API.

Autoryzacja

Autoryzacja jest wymagana podczas wywoływania dowolnej operacji dostępu do danych w usłudze Azure Storage. Możesz autoryzować operację Get Blob Layout zgodnie z poniższym opisem.

Important

Firma Microsoft zaleca używanie identyfikatora Entra firmy Microsoft z tożsamościami zarządzanymi w celu autoryzowania żądań do usługi Azure Storage. Identyfikator Entra firmy Microsoft zapewnia lepsze zabezpieczenia i łatwość użycia w porównaniu z autoryzacją klucza współdzielonego.

Usługa Azure Storage obsługuje używanie Microsoft Entra ID do autoryzacji żądań do danych blob. Za pomocą identyfikatora Entra firmy Microsoft 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 Microsoft Entra ID, aby zwrócić token 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 o autoryzacji przy użyciu identyfikatora Entra firmy Microsoft, zobacz Autoryzowanie dostępu do obiektów blob przy użyciu identyfikatora Entra firmy Microsoft.

Permissions

Poniżej wymieniono akcję RBAC niezbędną dla użytkownika microsoft Entra, grupy, tożsamości zarządzanej lub jednostki usługi w celu wywołania operacji Get Blob Layout oraz najmniej uprzywilejowanej wbudowanej roli RBAC platformy Azure, która obejmuje tę akcję:

Aby dowiedzieć się więcej na temat przypisywania ról przy użyciu kontroli dostępu opartej na rolach platformy Azure, zobacz Assign an Azure role for access to blob data.

Remarks

  • To API jest ważne tylko dla dodawania i blokowania bloków.

  • API może się powiódć z HTTP 200 (OK) lub HTTP 204 (No Content). Jeśli HTTP 204 zostanie zwrócony, nie ma dostępnych informacji o układzie dla bloba, a API jest funkcjonalnie równoważne .Get Blob Properties Jeśli nie ma dostępnych informacji o układzie, klienci powinni użyć standardowych Get Blob wywołań do pobrania bloba.

  • Jeśli zwrócony zostanie układ, możesz użyć hosta i portu w każdym Zakresie, aby pobrać zawartość bloba objętego tym Zakresem. Zdecydowanie zaleca się warunkowanie tych pobrań na ETag zwróconym z Get Blob Layout rozmowy, aby zapewnić silną spójność odczytów.

  • Nagłówki x-ms-blob-content-* odpowiedzi odnoszą się do samego bloba, a nie do podzasobu układu. Reakcja Content-Type zawsze application/xml dotyczy sytuacji, gdy ciało odpowiedzi zostało zwrócone.

  • API akceptuje nagłówek aor Rangex-ms-range . Jeśli nagłówek zakresu zostanie pominięty, żądanie dotyczy całego blobu. API nigdy nie zwróci zakresów wykraczających poza nagłówek Zakres.

  • API jest paginowane. API może nie zwracać wystarczającej liczby zakresów, aby pokryć cały blob, lub, w przypadku żądań zakresu, wystarczającej liczby zakresów, by pokryć cały żądany zakres. Jeśli tak się stanie, API zwróci a NextMarker , którego powinieneś użyć do żądania dodatkowych zakresów. Jeśli używasz markera, MUSISZ również przekazać warunek If-Match odpowiadający ETag z żądania, które wygenerowało marker. Dodatkowo, jeśli żądanie generujące marker zawierało nagłówek lub Rangex-ms-range (or header), kolejne żądanie MUSI zawierać identyczny nagłówek. Jeśli żądanie generujące marker nie zawierało nagłówka zakresu, kolejne żądanie MUSI również nie zawierać nagłówka zakresu.

  • NIE WOLNO zakładać, że lista punktów końcowych w odpowiedzi zgadza się z listą punktów końcowych z wcześniejszych Get Blob Layout żądań do tego bloba. Dotyczy to nawet przypadku, gdy żądanie używa markera – lista punktów końcowych może nie odpowiadać liście punktów końcowych z żądaniem, które wygenerowało marker.

  • Punkt końcowy zwracany dla każdego zakresu to nazwa hosta DNS i port, zwracane w postaci hostname:port. To jest punkt końcowy usługi, który należy odczytać dla tego zakresu. MUSISZ użyć zarówno nazwy hosta, jak i portu przy tworzeniu żądania HTTP. Nazwa hosta może nie zawierać nazwy konta, więc MUSISZ wyraźnie dodać odpowiedni Host nagłówek w kolejnych Get Blob wywołaniach API na tym punkcie końcowym.

  • Układ blobu może się zmieniać z czasem, nawet jeśli nie jest on modyfikowany. Układ danego blobu powinien być odświeżany po pięciu minutach lub za każdym razem, gdy blob zostanie zmodyfikowany.

Informacje dodatkowe

Autoryzowanie żądań do usługi Azure Storage
kody stanu i błędów
Kody błędów usługi Blob Storage
Ustaw limity czasowe dla operacji Blob StorageBlob Service ConceptOkreśl warunkowe nagłówki dla operacji Blob Storage