Udostępnij za pośrednictwem


Umieszczanie obiektu blob z adresu URL

Operacja Put Blob From URL tworzy nowy blokowy obiekt blob, w którym zawartość obiektu blob jest odczytywana z określonego adresu URL. Ten interfejs API jest dostępny w wersji 2020-04-08.

Aktualizacje częściowe nie są obsługiwane w przypadku Put Blob From URL. Zawartość istniejącego obiektu blob jest zastępowana zawartością nowego obiektu blob. Aby wykonać częściowe aktualizacje zawartości blokowego obiektu blob przy użyciu źródłowego adresu URL, użyj interfejsu API Put Block From URL w połączeniu z Put Block List.

Rozmiar źródłowego obiektu blob może wynosić maksymalnie 5000 mebibajtów (MiB).

Żądanie

Możesz skonstruować Put Blob From URL w następujący sposób. Zalecamy używanie protokołu HTTPS. Zastąp myaccount nazwą konta magazynu:

IDENTYFIKATOR URI żądania PUT Wersja protokołu HTTP
https://myaccount.blob.core.windows.net/mycontainer/myblob HTTP/1.1

Emulowane żądanie usługi magazynu

Gdy wysyłasz żądanie względem emulowanej usługi magazynu, określ nazwę hosta emulatora i port usługi Blob Service jako 127.0.0.1:10000, a następnie nazwę emulowanego konta magazynu:

IDENTYFIKATOR URI żądania PUT Wersja protokołu HTTP
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob HTTP/1.1

Emulator magazynu obsługuje tylko rozmiary obiektów blob o rozmiarze do 2 gibibajtów (GiB).

Aby uzyskać więcej informacji, zobacz Use the Azurite emulator for local Azure Storage development.

Parametry identyfikatora URI

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

Parametr Opis
timeout Opcjonalny. Parametr timeout jest wyrażony w sekundach. Aby uzyskać więcej informacji, zobacz Ustawianie limitów czasu dla operacji usługi Blob Service.

Nagłówki żądań

Wymagane i opcjonalne nagłówki żądań zostały opisane w poniższej tabeli:

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 uniwersalny czas koordynowany (UTC) dla żądania. Aby uzyskać więcej informacji, zobacz Autoryzowanie żądań do usługi Azure Storage.
x-ms-version Wymagane dla wszystkich autoryzowanych żądań. Określa wersję operacji do użycia dla tego żądania. Aby uzyskać więcej informacji, zobacz Przechowywanie wersji dla usług Azure Storage.
Content-Length Wymagane. Określa liczbę bajtów przesyłanych w treści żądania. Wartość tego nagłówka musi być ustawiona na 0. Jeśli długość nie jest 0, operacja kończy się niepowodzeniem z kodem stanu 400 (Nieprawidłowe żądanie).
x-ms-copy-source:name Wymagane. Określa adres URL źródłowego obiektu blob. Wartość może być adresem URL o długości do 2 kibibajtów (KiB), który określa obiekt blob. Wartość powinna być zakodowana w adresie URL, tak jak w identyfikatorze URI żądania. Źródłowy obiekt blob musi być publiczny lub autoryzowany za pośrednictwem sygnatury dostępu współdzielonego. Jeśli źródłowy obiekt blob jest publiczny, do wykonania operacji nie jest wymagana żadna autoryzacja. Jeśli rozmiar źródłowego obiektu blob jest większy niż 5000 MiB lub jeśli źródło nie zwraca prawidłowej wartości Content-Length, żądanie kończy się niepowodzeniem z kodem stanu 409 (Konflikt). Oto kilka przykładów adresów URL obiektów źródłowych:

- 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>
x-ms-copy-source-authorization: <scheme> <signature> Opcjonalny. Określa schemat autoryzacji i podpis dla źródła kopii. Aby uzyskać więcej informacji, zobacz Autoryzowanie żądań do usługi Azure Storage.

Uwaga: tylko schemat elementu nośnego jest obsługiwany dla firmy Microsoft Entra.

Uwaga: jeśli obiekt źródłowy jest publicznie dostępny lub obiekt źródłowy znajduje się na koncie magazynu i używasz tokenu SAS przekazywanego w x-ms-copy-source:name, ten nagłówek nie jest potrzebny.

Ten nagłówek jest obsługiwany w wersjach 2020-10-02 i nowszych.
x-ms-blob-type: BlockBlob Wymagane. Określa typ obiektu blob do utworzenia, który musi być BlockBlob. Jeśli typ obiektu blob nie jest BlockBlob, operacja kończy się niepowodzeniem z kodem stanu 400 (nieprawidłowe żądanie).
Content-Type Opcjonalny. Typ zawartości MIME obiektu blob. Domyślnym typem jest application/octet-stream.
Content-Encoding Opcjonalny. Określa, które kodowania zawartości zostały zastosowane do obiektu blob. Ta wartość jest zwracana do klienta, gdy operacja get blob jest wykonywana na zasobie obiektu blob. Gdy ta wartość zostanie zwrócona, klient może użyć go do dekodowania zawartości obiektu blob.
Content-Language Opcjonalny. Określa języki naturalne używane przez ten zasób.
Cache-Control Opcjonalny. Usługa Blob Storage przechowuje tę wartość, ale nie używa jej ani nie modyfikuje.
x-ms-source-content-md5 Opcjonalny. Skrót MD5 zawartości obiektu blob z identyfikatora URI. Ten skrót służy do weryfikowania integralności obiektu blob podczas transportu danych z identyfikatora URI. Po określeniu tego nagłówka usługa magazynu porównuje skrót zawartości, która dotarła ze źródła kopii z tą wartością nagłówka. Jeśli ten nagłówek zostanie pominięty, usługa Blob Storage generuje skrót MD5.

Jeśli dwa skróty nie są zgodne, operacja kończy się niepowodzeniem z kodem błędu 400 (Nieprawidłowe żądanie).
x-ms-content-crc64 Opcjonalny. Skrót CRC64 zawartości obiektu blob. Ten skrót służy do weryfikowania integralności obiektu blob podczas transportu. Po określeniu tego nagłówka usługa magazynu sprawdza skrót, który dotarł do wysłanego elementu. Jeśli dwa skróty nie są zgodne, operacja kończy się niepowodzeniem z kodem błędu 400 (Nieprawidłowe żądanie). Ten nagłówek jest obsługiwany w wersji 02-02-2019 lub nowszej.

Jeśli istnieją nagłówki Content-MD5 i x-ms-content-crc64, żądanie kończy się niepowodzeniem z błędem 400 (nieprawidłowe żądanie).
x-ms-blob-content-type Opcjonalny. Ustawia typ zawartości obiektu blob.
x-ms-blob-content-encoding Opcjonalny. Ustawia kodowanie zawartości obiektu blob.
x-ms-blob-content-language Opcjonalny. Ustawia język zawartości obiektu blob.
x-ms-blob-content-md5 Opcjonalny. Ustawia skrót MD5 obiektu blob.
x-ms-blob-cache-control Opcjonalny. Ustawia kontrolkę pamięci podręcznej obiektu blob.
x-ms-meta-name:value Opcjonalny. Pary name-value, które są skojarzone z obiektem blob jako metadane.

Uwaga: od wersji 2009-09-19 nazwy metadanych muszą być zgodne z regułami nazewnictwa dla identyfikatorów języka C# .
x-ms-encryption-scope Opcjonalny. Zakres szyfrowania używany do szyfrowania zawartości żądania. Ten nagłówek jest obsługiwany w wersji 2019-02-02 lub nowszej.
x-ms-tags Opcjonalny. Ustawia określone tagi zakodowane w ciągu zapytania w obiekcie blob. Aby uzyskać więcej informacji, przejdź do sekcji Uwagi. Obsługiwane w wersji 2019-12-12 lub nowszej.
x-ms-copy-source-tag-option Opcjonalny. Możliwe wartości to REPLACE lub COPY (z uwzględnieniem wielkości liter). Wartość domyślna to REPLACE.

Jeśli określono wartość COPY, tagi z źródłowego obiektu blob są kopiowane do docelowego obiektu blob. Źródłowy obiekt blob musi być prywatny, a żądanie musi mieć uprawnienia do Pobieranie tagów obiektów blob w źródłowym obiekcie blob i ustawianie tagów obiektów blob w docelowym obiekcie blob. Spowoduje to dodatkowe wywołanie operacji pobierania tagów obiektów blob na koncie źródłowym.

Zastąp tagi określone przez nagłówek x-ms-tags w docelowym obiekcie blob. Jeśli funkcja REPLACE jest używana i żadne tagi nie są określone przez x-ms-tags, żadne tagi nie są ustawione w docelowym obiekcie blob. Określanie wartości COPY i x-ms-tags powoduje wystąpienie błędu 409 (Konflikt).

Obsługiwane w wersji 2021-04-10 lub nowszej.
x-ms-copy-source-blob-properties Opcjonalny. Określa zachowanie właściwości kopiowania źródłowego obiektu blob. Jeśli ustawiono wartość True, właściwości źródłowego obiektu blob zostaną skopiowane do nowego obiektu blob. Domyślna wartość to True.
x-ms-source-if-modified-since Opcjonalny. DateTime Wartość. Określ ten nagłówek warunkowy, aby umieścić obiekt blob tylko wtedy, gdy źródłowy obiekt blob został zmodyfikowany od określonej daty/godziny. Jeśli źródłowy obiekt blob nie został zmodyfikowany, usługa Blob Storage zwraca kod stanu 412 (Niepowodzenie warunku wstępnego). Nie można określić tego nagłówka, jeśli źródłem jest udział usługi Azure Files.
x-ms-source-if-unmodified-since Opcjonalny. DateTime Wartość. Określ ten nagłówek warunkowy, aby umieścić obiekt blob tylko wtedy, gdy źródłowy obiekt blob nie został zmodyfikowany od określonej daty/godziny. Jeśli źródłowy obiekt blob został zmodyfikowany, usługa Blob Storage zwraca kod stanu 412 (Niepowodzenie warunku wstępnego). Nie można określić tego nagłówka, jeśli źródłem jest udział usługi Azure Files.
x-ms-source-if-match Opcjonalny. Wartość elementu ETag. Określ ten nagłówek warunkowy, aby umieścić źródłowy obiekt blob tylko wtedy, gdy element ETag jest zgodny z określoną wartością. Jeśli wartości elementu ETag nie są zgodne, usługa Blob Storage zwraca kod stanu 412 (Niepowodzenie warunku wstępnego). Nie można określić tego nagłówka, jeśli źródłem jest udział usługi Azure Files.
x-ms-source-if-none-match Opcjonalny. Wartość elementu ETag. Określ ten nagłówek warunkowy, aby umieścić obiekt blob tylko wtedy, gdy element ETag nie jest zgodny z określoną wartością. Jeśli wartości są identyczne, usługa Blob Storage zwraca kod stanu 412 (Niepowodzenie warunku wstępnego). Nie można określić tego nagłówka, jeśli źródłem jest udział usługi Azure Files.
If-Modified-Since Opcjonalny. DateTime Wartość. Określ ten nagłówek warunkowy, aby umieścić obiekt blob tylko wtedy, gdy docelowy obiekt blob został zmodyfikowany od określonej daty/godziny. Jeśli docelowy obiekt blob nie został zmodyfikowany, usługa Blob Storage zwraca kod stanu 412 (Niepowodzenie warunku wstępnego).
If-Unmodified-Since Opcjonalny. DateTime Wartość. Określ ten nagłówek warunkowy, aby umieścić obiekt blob tylko wtedy, gdy docelowy obiekt blob nie został zmodyfikowany od określonej daty/godziny. Jeśli docelowy obiekt blob został zmodyfikowany, usługa Blob Storage zwraca kod stanu 412 (Niepowodzenie warunku wstępnego).
If-Match Opcjonalny. Wartość elementu ETag. Określ wartość elementu ETag dla tego nagłówka warunkowego, aby umieścić obiekt blob tylko wtedy, gdy określona wartość elementu ETag jest zgodna z wartością ETag dla istniejącego docelowego obiektu blob. Jeśli element ETag dla docelowego obiektu blob nie jest zgodny z elementem ETag określonym dla If-Match, usługa Blob Storage zwraca kod stanu 412 (Niepowodzenie warunku wstępnego).
If-None-Match Opcjonalny. Wartość elementu ETag lub symbol wieloznaczny (*).

Określ wartość elementu ETag dla tego nagłówka warunkowego, aby umieścić obiekt blob tylko wtedy, gdy określona wartość elementu ETag nie jest zgodna z wartością ETag docelowego obiektu blob.

Określ symbol wieloznaczny (*) do wykonania operacji tylko wtedy, gdy docelowy obiekt blob nie istnieje.

Jeśli określony warunek nie zostanie spełniony, usługa Blob Storage zwróci kod stanu 412 (Niepowodzenie warunku wstępnego).
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.
x-ms-blob-content-disposition Opcjonalny. Ustawia nagłówek Content-Disposition obiektu blob. Dostępne dla wersji 2013-08-15 lub nowszej.

Pole nagłówka odpowiedzi Content-Disposition zawiera dodatkowe informacje o sposobie przetwarzania ładunku odpowiedzi i może służyć do dołączania dodatkowych metadanych. Jeśli na przykład nagłówek ma ustawioną wartość attachment, oznacza to, że agent użytkownika nie powinien wyświetlać odpowiedzi. Zamiast tego powinno zostać wyświetlone okno dialogowe Zapisz jako z nazwą pliku inną niż określona nazwa obiektu blob.

Odpowiedź z Get Blob i Get Blob Properties operations zawiera nagłówek content-disposition.
Origin Opcjonalny. Określa źródło, z którego jest wystawiane żądanie. Obecność tego nagłówka powoduje użycie nagłówków współużytkowania zasobów między źródłami (CORS) w odpowiedzi. Aby uzyskać więcej informacji, zobacz obsługę mechanizmu CORS dla usług Azure Storage.
x-ms-client-request-id Opcjonalny. Zapewnia nieprzezroczystą wartość wygenerowaną przez klienta z limitem znaków 1-kibibyte (KiB), który jest rejestrowany w dziennikach analitycznych po włączeniu rejestrowania analizy magazynu. Zdecydowanie zalecamy używanie tego nagłówka do korelowania działań po stronie klienta z żądaniami odbieranymi przez serwer.
x-ms-access-tier Opcjonalny. Wskazuje warstwę, która ma zostać ustawiona w obiekcie blob. Prawidłowe wartości warstw blokowych obiektów blob to Hot, Cool, Coldi Archive. Uwaga: warstwa Cold jest obsługiwana w wersji 2021-12-02 lub nowszej. Hot, Cooli Archive są obsługiwane w wersji 2018-11-09 lub nowszej. Aby uzyskać więcej informacji na temat warstw blokowych obiektów blob, zobacz Warstwy magazynowania Gorąca, Chłodna i Archiwum.
x-ms-expiry-option Opcjonalny. Wersja 2023-08-03 lub nowsza. Określa opcję daty wygaśnięcia żądania. Aby uzyskać więcej informacji, zobacz ExpiryOption. Ten nagłówek jest prawidłowy dla kont z włączoną hierarchiczną przestrzenią nazw.
x-ms-expiry-time Opcjonalny. Wersja 2023-08-03 lub nowsza. Określa czas wygaśnięcia obiektu blob. Format daty wygaśnięcia różni się w zależności od x-ms-expiry-option. Aby uzyskać więcej informacji, zobacz ExpiryOption. Ten nagłówek jest prawidłowy dla kont z włączoną hierarchiczną przestrzenią nazw.

Ta operacja obsługuje również używanie nagłówków warunkowych do zapisywania 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.

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

Następujące nagłówki można określić na żądanie szyfrowania obiektu blob przy użyciu klucza dostarczonego przez klienta. Szyfrowanie przy użyciu klucza dostarczonego przez klienta (i odpowiadającego mu zestawu nagłówków) jest opcjonalne.

Nagłówek żądania Opis
x-ms-encryption-key Wymagane. Klucz szyfrowania AES-256 zakodowany w formacie Base64.
x-ms-encryption-key-sha256 Wymagane. Skrót SHA256 zakodowany w formacie Base64 klucza szyfrowania.
x-ms-encryption-algorithm: AES256 Wymagane. Określa algorytm do użycia na potrzeby szyfrowania. Wartość tego nagłówka musi być AES256.

Treść żądania

Brak.

Przykładowe żądanie

W poniższym przykładzie przedstawiono żądanie utworzenia blokowego obiektu blob:

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer/myblockblob HTTP/1.1  
  
Request Headers:  
x-ms-version: 2020-04-08  
x-ms-date: <date>  
Content-Type: text/plain; charset=UTF-8  
x-ms-blob-content-disposition: attachment; filename="fname.ext"  
x-ms-blob-type: BlockBlob  
x-ms-meta-m1: v1  
x-ms-meta-m2: v2  
x-ms-copy-source: https://myaccount.blob.core.windows.net/mycontainer/myblob
x-ms-expiry-option: RelativeToNow
x-ms-expiry-time: 30000
Authorization: SharedKey myaccount:YhuFJjN4fAR8/AmBrqBz7MG2uFinQ4rkh4dscbj598g=  
Content-Length: 0

Response

Odpowiedź zawiera kod stanu HTTP i zestaw nagłówków odpowiedzi.

Kod stanu

Pomyślna operacja zwraca kod stanu 201 (Utworzono).

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 Opis
ETag Element ETag zawiera wartość, która może służyć klientowi do wykonywania operacji PUT warunkowych przy użyciu nagłówka żądania If-Match. Wartość ETag jest ujęta w cudzysłów.
Last-Modified Data/godzina ostatniej modyfikacji obiektu blob. Format daty jest zgodny z RFC 1123. Aby uzyskać więcej informacji, zobacz Reprezentowanie wartości daty/godziny w nagłówkach.

Każda operacja zapisu w obiekcie blob (w tym aktualizacje metadanych lub właściwości obiektu blob) zmienia czas ostatniej modyfikacji obiektu blob.
Content-MD5 Zwrócony dla blokowego obiektu blob, aby klient mógł sprawdzić integralność zawartości komunikatu. Zwracana wartość Content-MD5 jest obliczana przez usługę Blob Storage. Ten nagłówek jest zwracany nawet wtedy, gdy żądanie nie zawiera nagłówków Content-MD5 ani x-ms-blob-content-md5.
x-ms-content-crc64 Zwrócony dla blokowego obiektu blob, aby klient mógł sprawdzić integralność zawartości komunikatu. Zwracana wartość x-ms-content-crc64 jest obliczana przez usługę Blob Storage. Ten nagłówek jest zawsze zwracany.
x-ms-request-id Unikatowo identyfikuje żądanie, które zostało wykonane, i można go 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 Wersja usługi Blob Storage, która została użyta do wykonania żądania.
Date Wartość daty/godziny UTC wygenerowana przez usługę, która wskazuje godzinę zainicjowania odpowiedzi.
Access-Control-Allow-Origin Zwracany, jeśli żądanie zawiera nagłówek Origin, a mechanizm CORS jest włączony z regułą dopasowania. Ten nagłówek zwraca wartość nagłówka żądania źródła, jeśli istnieje dopasowanie.
Access-Control-Expose-Headers Zwracany, jeśli żądanie zawiera nagłówek Origin, a mechanizm CORS jest włączony z regułą dopasowania. Zwraca listę nagłówków odpowiedzi, które mają być widoczne dla klienta lub wystawcy żądania.
Access-Control-Allow-Credentials Zwracane, jeśli żądanie zawiera nagłówek Origin, a mechanizm CORS jest włączony z regułą dopasowania, która nie zezwala na wszystkie źródła. Ten nagłówek ma ustawioną wartość true.
x-ms-request-server-encrypted: true/false Wartość tego nagłówka jest ustawiona na true, jeśli zawartość żądania zostanie pomyślnie zaszyfrowana przy użyciu określonego algorytmu. W przeciwnym razie wartość jest ustawiona na wartość false.
x-ms-encryption-key-sha256 Zwrócony, jeśli żądanie użyło klucza dostarczonego przez klienta do szyfrowania, aby klient mógł upewnić się, że zawartość żądania została pomyślnie zaszyfrowana przy użyciu podanego klucza.
x-ms-encryption-scope Zwrócone, jeśli żądanie używa zakresu szyfrowania, aby klient mógł upewnić się, że zawartość żądania została pomyślnie zaszyfrowana przy użyciu zakresu szyfrowania.
x-ms-version-id: <DateTime> Zwraca nieprzezroczystą wartość DateTime, która jednoznacznie identyfikuje obiekt blob. Wartość tego nagłówka wskazuje wersję obiektu blob i może być używana w kolejnych żądaniach dostępu do obiektu blob.

Treść odpowiedzi

Brak.

Przykładowa odpowiedź

Response Status:  
HTTP/1.1 201 Created  
  
Response Headers:  
Transfer-Encoding: chunked  
Content-MD5: sQqNsWTgdUEFt6mb5y4/5Q==  
x-ms-content-crc64: 77uWZTolTHU
Date: <date>  
ETag: "0x8CB171BA9E94B0B"  
Last-Modified: <date>  
Access-Control-Allow-Origin: http://contoso.com  
Access-Control-Expose-Headers: Content-MD5  
Access-Control-Allow-Credentials: True  
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0  
x-ms-version-id: <DateTime>  

Autoryzacja

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

Jeśli żądanie określa tagi z nagłówkiem żądania x-ms-tags, obiekt wywołujący musi spełniać wymagania autoryzacji Ustaw tagi obiektów blob operacji.

Ważne

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 identyfikatora Entra firmy Microsoft do autoryzowania żądań do danych obiektów 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 identyfikator entra firmy Microsoft 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 o autoryzacji przy użyciu identyfikatora Entra firmy Microsoft, zobacz Autoryzowanie dostępu do obiektów blob przy użyciu identyfikatora Entra firmy Microsoft.

Uprawnienia

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 Put Blob From URL 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.

Uwagi

Operacja Put Blob From URL jest obsługiwana w wersji 2020-04-08.

W wersji 2020-10-02 lub nowszej autoryzacja firmy Microsoft Entra jest obsługiwana dla źródła operacji kopiowania.

Źródłowy obiekt blob może mieć dowolny typ, w tym blokowy obiekt blob, uzupełnialne obiekty blob lub stronicowy obiekt blob. Docelowy obiekt blob musi jednak być blokowym obiektem blob.

Operacja Put Blob From URL zawsze kopiuje cały źródłowy obiekt blob. Kopiowanie zakresu bajtów lub zestawu bloków nie jest obsługiwane. Aby wykonać częściowe aktualizacje, zapoznaj się z tematem Put Block From URL. Docelowy obiekt blob może być istniejącym blokowym obiektem blob lub może być nowym obiektem blob utworzonym przez operację.

Gdy używasz blokowego obiektu blob jako obiektu źródłowego, zostanie skopiowana cała zatwierdzona zawartość obiektu blob. Lista bloków nie jest jednak zachowywana, a niezatwierdzone bloki nie są kopiowane. Zawartość docelowego obiektu blob jest identyczna z zawartością źródła, ale zatwierdzona lista bloków nie jest zachowywana.

Umieszczanie właściwości obiektów blob i metadanych

Podczas tworzenia blokowego obiektu blob ze źródła kopii standardowe właściwości obiektu blob są domyślnie kopiowane ze źródłowego obiektu blob. Jeśli metadane aplikacji są określone w żądaniu, są przechowywane bez kopiowania źródłowych metadanych obiektu blob. Aby jawnie ustawić wszystkie nagłówki zawartości HTTP, możesz określić odpowiedni nagłówek w żądaniu.

  • Content-Type

  • Content-Encoding

  • Content-Length

  • Cache-Control

  • Content-Disposition

Rozmiar docelowego obiektu blob jest zawsze zgodny ze źródłowym obiektem blob. Nagłówek Content-Length musi zawierać wartość 0 w żądaniu Put Blob From URL (ponieważ nie ma treści żądania), a właściwość length zawartości docelowego obiektu blob jest wnioskowana z rozmiaru źródła.

umieść obiekt blob z właściwości niestandardowych adresu URL

Put Blob From Url jest zgodna z tymi samymi semantykami co Put Blob w celu ustawienia właściwości niestandardowych skojarzonych ze standardowymi nagłówkami HTTP. Aby uzyskać więcej informacji, zobacz Właściwości niestandardowe obiektu blob

tagi indeksu obiektów blob

Jeśli tagi docelowego obiektu blob znajdują się w nagłówku x-ms-tags, muszą być kodowane ciągami zapytania. Klucze tagów i wartości muszą być zgodne z wymaganiami dotyczącymi nazewnictwa i długości, jak określono w Set Blob Tags. Ponadto nagłówek x-ms-tags może zawierać maksymalnie 2 kiB tagów. Jeśli wymagane są więcej tagów, użyj operacji Set Blob Tags.

Jeśli tagi nie są podane w nagłówku x-ms-tags, nie są kopiowane ze źródłowego obiektu blob.

zakresy szyfrowania i klucze dostarczone przez klienta

Interfejs API Put Blob From URL obsługuje zarówno zakresy szyfrowania, jak i klucze dostarczone przez klienta, używając odpowiednio nagłówków x-ms-encryption-scope i x-ms-encryption-key.

Jeśli nagłówek x-ms-copy-source odnosi się do tego samego źródłowego obiektu blob co docelowy obiekt blob w identyfikatorze URI żądania, operacja Put Blob From URL wykonuje synchroniczne ponowne zapisywanie obiektu blob w miejscu. Umożliwia to ponowne zapisywanie obiektu blob w celu użycia innego klucza szyfrowania lub zakresu szyfrowania.

Rozliczenia

Żądania cen mogą pochodzić od klientów korzystających z interfejsów API usługi Blob Storage bezpośrednio za pośrednictwem interfejsu API REST usługi Blob Storage lub z biblioteki klienta usługi Azure Storage. Te żądania naliczają opłaty za transakcję. Typ transakcji wpływa na sposób naliczania opłat za konto. Na przykład transakcje odczytu są naliczane do innej kategorii rozliczeniowej niż transakcje zapisu. W poniższej tabeli przedstawiono kategorię rozliczeń dla żądań Put Blob From URL na podstawie typu konta magazynu:

Operacja Storage account type Kategoria rozliczeń
Umieść obiekt blob z adresu URL (konto docelowe1) Blokowy obiekt blob w warstwie Premium
Standardowa ogólnego przeznaczenia, wersja 2
Standardowa ogólnego przeznaczenia, wersja 1
Operacje zapisu
Umieść obiekt blob z adresu URL (konto źródłowe2) Blokowy obiekt blob w warstwie Premium
Standardowa ogólnego przeznaczenia, wersja 2
Standardowa ogólnego przeznaczenia, wersja 1
Operacje odczytu

1Konto docelowe jest naliczane za jedną transakcję w celu zainicjowania zapisu.
2Konto źródłowe generuje jedną transakcję dla każdego żądania odczytu do obiektu źródłowego.

Ponadto jeśli konta źródłowe i docelowe znajdują się w różnych regionach (na przykład Północno-wschodnie stany USA i Południowe stany USA), przepustowość użyta do przeniesienia żądania jest obciążana źródłowym kontem magazynu jako ruch wychodzący. Ruch wychodzący między kontami w tym samym regionie jest bezpłatny.

Na koniec utworzenie nowego obiektu blob o innej nazwie w ramach tego samego konta magazynu korzysta z dodatkowych zasobów magazynu, dlatego operacja powoduje naliczanie opłaty za użycie pojemności konta magazynu dla tych dodatkowych zasobów.

Aby dowiedzieć się więcej o cenach określonych kategorii rozliczeń, zobacz Cennik usługi Azure Blob Storage.

Zobacz też

Autoryzowanie żądań do usługi Azure StorageStan i kody błędówkody błędów usługi Blob ServiceUstawianie limitów czasu dla operacji usługi Blob Service