Ustawianie właściwości usługi Blob Service
Operacja Set Blob Service Properties
ustawia właściwości punktu końcowego usługi Blob Storage konta magazynu, w tym właściwości dla analityka magazynu, reguł współużytkowania zasobów między źródłami (CORS) i ustawień usuwania nietrwałego.
Możesz również użyć tej operacji, aby ustawić domyślną wersję żądania dla wszystkich żądań przychodzących do usługi Blob Storage, która nie ma określonej wersji.
Aby uzyskać więcej informacji na temat reguł CORS, zobacz Obsługa mechanizmu CORS dla usług Azure Storage.
Żądanie
Żądanie Set Blob Service Properties
można określić w następujący sposób. Zalecamy korzystanie z protokołu HTTPS. Zastąp ciąg account-name nazwą konta magazynu:
Metoda | Identyfikator URI żądania | Wersja PROTOKOŁU HTTP |
---|---|---|
PUT | https://account-name.blob.core.windows.net/?restype=service&comp=properties |
HTTP/1.1 |
Uwaga
Identyfikator URI musi zawsze zawierać znak ukośnika (/), aby oddzielić nazwę hosta od części ścieżki i zapytania identyfikatora URI. W tej operacji część ścieżki identyfikatora URI jest pusta.
Parametry identyfikatora URI
Parametr identyfikatora URI | Opis |
---|---|
restype=service&comp=properties |
Wymagane. Aby ustawić właściwości usługi magazynu, wymagana jest kombinacja obu ciągów zapytania. |
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. |
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 magazynu 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ń. Określa wersję operacji do użycia dla tego żądania. Aby uzyskać więcej informacji, zobacz Przechowywanie wersji dla usług Azure Storage. |
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. |
Treść żądania
W przypadku wersji 2012-02-12 i starszych format treści żądania jest następujący:
<?xml version="1.0" encoding="utf-8"?>
<StorageServiceProperties>
<Logging>
<Version>version-number</Version>
<Delete>true|false</Delete>
<Read>true|false</Read>
<Write>true|false</Write>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</Logging>
<Metrics>
<Version>version-number</Version>
<Enabled>true|false</Enabled>
<IncludeAPIs>true|false</IncludeAPIs>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</Metrics>
<!-- The DefaultServiceVersion element can only be set for Blob Storage, and the request must be made using version 2011-08-18 and later -->
<DefaultServiceVersion>default-service-version-string</DefaultServiceVersion>
</StorageServiceProperties>
W przypadku wersji 2013-08-15 lub nowszej format treści żądania jest następujący:
<?xml version="1.0" encoding="utf-8"?>
<StorageServiceProperties>
<Logging>
<Version>version-number</Version>
<Delete>true|false</Delete>
<Read>true|false</Read>
<Write>true|false</Write>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</Logging>
<HourMetrics>
<Version>version-number</Version>
<Enabled>true|false</Enabled>
<IncludeAPIs>true|false</IncludeAPIs>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</HourMetrics>
<MinuteMetrics>
<Version>version-number</Version>
<Enabled>true|false</Enabled>
<IncludeAPIs>true|false</IncludeAPIs>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</MinuteMetrics>
<Cors>
<CorsRule>
<AllowedOrigins>comma-separated-list-of-allowed-origins</AllowedOrigins>
<AllowedMethods>comma-separated-list-of-HTTP-verbs</AllowedMethods>
<MaxAgeInSeconds>max-caching-age-in-seconds</MaxAgeInSeconds>
<ExposedHeaders>comma-separated-list-of-response-headers</ExposedHeaders>
<AllowedHeaders>comma-separated-list-of-request-headers</AllowedHeaders>
</CorsRule>
</Cors>
<!-- The DefaultServiceVersion element can only be set for Blob Storage, and the request must be made using version 2011-08-18 and later -->
<DefaultServiceVersion>default-service-version-string</DefaultServiceVersion>
</StorageServiceProperties>
W przypadku wersji 2017-07-29 lub nowszej format treści żądania jest następujący:
<?xml version="1.0" encoding="utf-8"?>
<StorageServiceProperties>
<Logging>
<Version>version-number</Version>
<Delete>true|false</Delete>
<Read>true|false</Read>
<Write>true|false</Write>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</Logging>
<HourMetrics>
<Version>version-number</Version>
<Enabled>true|false</Enabled>
<IncludeAPIs>true|false</IncludeAPIs>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</HourMetrics>
<MinuteMetrics>
<Version>version-number</Version>
<Enabled>true|false</Enabled>
<IncludeAPIs>true|false</IncludeAPIs>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</MinuteMetrics>
<Cors>
<CorsRule>
<AllowedOrigins>comma-separated-list-of-allowed-origins</AllowedOrigins>
<AllowedMethods>comma-separated-list-of-HTTP-verbs</AllowedMethods>
<MaxAgeInSeconds>max-caching-age-in-seconds</MaxAgeInSeconds>
<ExposedHeaders>comma-separated-list-of-response-headers</ExposedHeaders>
<AllowedHeaders>comma-separated-list-of-request-headers</AllowedHeaders>
</CorsRule>
</Cors>
<DefaultServiceVersion>default-service-version-string</DefaultServiceVersion>
<DeleteRetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</DeleteRetentionPolicy>
</StorageServiceProperties>
W przypadku wersji 2018-03-28 lub nowszej format treści żądania jest następujący:
<?xml version="1.0" encoding="utf-8"?>
<StorageServiceProperties>
<Logging>
<Version>version-number</Version>
<Delete>true|false</Delete>
<Read>true|false</Read>
<Write>true|false</Write>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</Logging>
<HourMetrics>
<Version>version-number</Version>
<Enabled>true|false</Enabled>
<IncludeAPIs>true|false</IncludeAPIs>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</HourMetrics>
<MinuteMetrics>
<Version>version-number</Version>
<Enabled>true|false</Enabled>
<IncludeAPIs>true|false</IncludeAPIs>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</MinuteMetrics>
<Cors>
<CorsRule>
<AllowedOrigins>comma-separated-list-of-allowed-origins</AllowedOrigins>
<AllowedMethods>comma-separated-list-of-HTTP-verbs</AllowedMethods>
<MaxAgeInSeconds>max-caching-age-in-seconds</MaxAgeInSeconds>
<ExposedHeaders>comma-separated-list-of-response-headers</ExposedHeaders>
<AllowedHeaders>comma-separated-list-of-request-headers</AllowedHeaders>
</CorsRule>
</Cors>
<DefaultServiceVersion>default-service-version-string</DefaultServiceVersion>
<DeleteRetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</DeleteRetentionPolicy>
<StaticWebsite>
<Enabled>true|false</Enabled>
<IndexDocument>default-name-of-index-page-under-each-directory</IndexDocument>
<ErrorDocument404Path>absolute-path-of-the-custom-404-page</ErrorDocument404Path>
</StaticWebsite>
</StorageServiceProperties>
W przypadku wersji 2019-12-12 lub nowszej format treści żądania jest następujący:
<?xml version="1.0" encoding="utf-8"?>
<StorageServiceProperties>
<Logging>
<Version>version-number</Version>
<Delete>true|false</Delete>
<Read>true|false</Read>
<Write>true|false</Write>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</Logging>
<HourMetrics>
<Version>version-number</Version>
<Enabled>true|false</Enabled>
<IncludeAPIs>true|false</IncludeAPIs>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</HourMetrics>
<MinuteMetrics>
<Version>version-number</Version>
<Enabled>true|false</Enabled>
<IncludeAPIs>true|false</IncludeAPIs>
<RetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</RetentionPolicy>
</MinuteMetrics>
<Cors>
<CorsRule>
<AllowedOrigins>comma-separated-list-of-allowed-origins</AllowedOrigins>
<AllowedMethods>comma-separated-list-of-HTTP-verbs</AllowedMethods>
<MaxAgeInSeconds>max-caching-age-in-seconds</MaxAgeInSeconds>
<ExposedHeaders>comma-separated-list-of-response-headers</ExposedHeaders>
<AllowedHeaders>comma-separated-list-of-request-headers</AllowedHeaders>
</CorsRule>
</Cors>
<DefaultServiceVersion>default-service-version-string</DefaultServiceVersion>
<DeleteRetentionPolicy>
<Enabled>true|false</Enabled>
<Days>number-of-days</Days>
</DeleteRetentionPolicy>
<StaticWebsite>
<Enabled>true|false</Enabled>
<IndexDocument>default-name-of-index-page-under-each-directory</IndexDocument>
<DefaultIndexDocumentPath>absolute-path-of-the-default-index-page</DefaultIndexDocumentPath>
<ErrorDocument404Path>absolute-path-of-the-custom-404-page</ErrorDocument404Path>
</StaticWebsite>
</StorageServiceProperties>
Począwszy od wersji 2013-08-15, można wywołać Set Blob Service Properties
z co najmniej jednym elementem głównym określonym w treści żądania. Elementy główne obejmują:
- Rejestrowanie
- HourMetrics
- Metryki minut
- Cors
- DefaultServiceVersion
- DeleteRetentionPolicy: wersja 2017-07-29 i nowsze
- StaticWebsite: wersja 2018-03-28 i nowsze
Nie trzeba już określać każdego elementu głównego w żądaniu. Jeśli pominięto element główny, istniejące ustawienia usługi dla tej funkcji zostaną zachowane. Jeśli jednak określisz element główny, musisz określić każdy element podrzędny dla tego elementu.
W poniższej tabeli opisano elementy treści żądania:
Nazwa elementu | Opis |
---|---|
Rejestrowanie | Opcjonalnie jako wersja 2013-08-15. Wymagane dla wcześniejszych wersji. Grupy ustawień rejestrowania usługi Azure Analytics. |
Metryki | Wymagane w wersji 2012-02-12 i starszych. Nie dotyczy wersji 2013-08-15 lub nowszej. Grupy ustawień metryk usługi Azure Analytics, które zawierają podsumowanie statystyk żądań pogrupowanych według interfejsu API w agregacjach godzinowych dla obiektów blob. |
HourMetrics | Opcjonalnie w wersji 2013-08-15 lub nowszej; nie dotyczy wcześniejszych wersji. Grupy ustawień usługi Azure Analytics HourMetrics, które zawierają podsumowanie statystyk żądań pogrupowanych według interfejsu API w agregacjach godzinowych dla obiektów blob. |
Metryki minut | Opcjonalnie w wersji 2013-08-15 lub nowszej; nie dotyczy wcześniejszych wersji. Grupy ustawień usługi Azure Analytics MinuteMetrics, które zapewniają statystyki żądań dla każdej minuty dla obiektów blob. W przypadku wersji starszych niż 2013-08-15 metryki MinuteMetrics nie są uwzględniane w treści odpowiedzi. |
Wersja | Wymagane, jeśli określono ustawienia Rejestrowanie, Metryki, HourMetrics lub MinuteMetrics . Wersja analityka magazynu do skonfigurowania. |
Usuwanie | Wymagane, jeśli określono ustawienia Rejestrowanie, Metryki, HourMetrics lub MinuteMetrics . Dotyczy tylko konfiguracji rejestrowania. Wskazuje, czy wszystkie żądania usuwania powinny być rejestrowane. |
Read | Wymagane, jeśli określono ustawienia Rejestrowanie, Metryki, HourMetrics lub MinuteMetrics . Dotyczy tylko konfiguracji rejestrowania. Wskazuje, czy wszystkie żądania odczytu powinny być rejestrowane. |
Write | Wymagane, jeśli określono ustawienia Rejestrowanie, Metryki, HourMetrics lub MinuteMetrics . Dotyczy tylko konfiguracji rejestrowania. Wskazuje, czy wszystkie żądania zapisu powinny być rejestrowane. |
Włączono | Wymagane. Wskazuje, czy metryki są włączone dla usługi Blob Storage. Jeśli włączono replikację geograficznie nadmiarową z dostępem do odczytu, zbierane są zarówno metryki podstawowe, jak i pomocnicze. Jeśli replikacja geograficznie nadmiarowa z dostępem do odczytu nie jest włączona, zbierane są tylko podstawowe metryki. |
IncludeAPIs | Wymagane tylko wtedy, gdy metryki są włączone. Dotyczy tylko konfiguracji metryk. Wskazuje, czy metryki powinny generować statystyki podsumowania dla wywoływanych operacji interfejsu API. |
RetentionPolicy/Enabled | Wymagane. Wskazuje, czy zasady przechowywania są włączone dla usługi magazynu. |
RetentionPolicy/Days | Wymagane tylko w przypadku włączenia zasad przechowywania. Wskazuje liczbę dni, w których powinny być przechowywane metryki lub dane rejestrowania. Wszystkie dane starsze niż ta wartość są usuwane. Minimalna wartość, którą można określić, to ; największa wartość to 1 365 (rok). |
RetentionPolicy/AllowPermanentDelete | Opcjonalnie, wersja 2020-02-10 lub nowsza. Umożliwia włączenie trwałego usuwania na koncie magazynu. Wartością domyślną jest false. . |
DefaultServiceVersion | Opcjonalny. Aby ustawić wartość DefaultServiceVersion, wywołaj Set Blob Service Properties metodę przy użyciu wersji 2011-08-18 lub nowszej.
DefaultServiceVersion wskazuje domyślną wersję do użycia dla żądań do usługi Blob Storage, jeśli nie określono wersji żądania przychodzącego. Możliwe wartości obejmują wersję 2008-10-27 lub nowszą. Aby uzyskać więcej informacji na temat odpowiednich wersji, zobacz Przechowywanie wersji usług Azure Storage.Dotyczy tylko usługi Blob Storage. |
Cors | Opcjonalny. Element Cors jest obsługiwany w wersji 2013-08-15 lub nowszej. Grupy wszystkich reguł CORS. Pominięcie tej grupy elementów nie zastępuje istniejących ustawień mechanizmu CORS. |
CorsRule | Opcjonalny. Określa regułę MECHANIZMU CORS dla usługi Blob Storage. W żądaniu można uwzględnić maksymalnie pięć elementów CorsRule . Jeśli w treści żądania nie zostaną uwzględnione żadne elementy corsRule , wszystkie reguły CORS zostaną usunięte, a mechanizm CORS zostanie wyłączony dla usługi Blob Storage. |
AllowedOrigins | Wymagane, jeśli element CorsRule jest obecny. Rozdzielona przecinkami lista domen pochodzenia, które są dozwolone za pośrednictwem mechanizmu CORS lub "*", aby zezwolić na wszystkie domeny. Domena źródła może również zawierać symbol wieloznaczny w poddomenie, aby zezwolić na żądania za pośrednictwem mechanizmu CORS dla wszystkich domen podrzędnych domeny. Ograniczone do 64 domen pochodzenia. Każde dozwolone źródło może mieć maksymalnie 256 znaków. |
ExposedHeaders | Wymagane, jeśli element CorsRule jest obecny. Rozdzielona przecinkami lista nagłówków odpowiedzi uwidacznianych klientom CORS. Ograniczone do 64 zdefiniowanych nagłówków i dwóch prefiksów nagłówków. Każdy nagłówek może mieć maksymalnie 256 znaków. |
MaxAgeInSeconds | Wymagane, jeśli element CorsRule jest obecny. Liczba sekund, w których klient/przeglądarka powinna buforować odpowiedź wstępną. |
Dozwoloneheaders | Wymagane, jeśli istnieje element CorsRule . Rozdzielona przecinkami lista nagłówków może być częścią żądania między źródłami. Ograniczone do 64 zdefiniowanych nagłówków i 2 prefiksów nagłówków. Każdy nagłówek może mieć maksymalnie 256 znaków. |
AllowedMethods | Wymagane, jeśli istnieje element CorsRule . Rozdzielona przecinkami lista metod HTTP, które mogą być wykonywane przez źródło. W przypadku usługi Azure Storage dozwolone metody to DELETE, GET, HEAD, MERGE, PATCH, POST, OPTIONS i PUT. |
DeleteRetentionPolicy | Opcjonalny. Aby ustawić metodę DeleteRetentionPolicy, wywołaj metodę Set Blob Service Properties przy użyciu wersji 2017-07-29 lub nowszej. Grupy ustawień usuwania nietrwałego. Dotyczy tylko usługi Blob Storage. |
DeleteRetentionPolicy/Enabled | Wymagane. Wskazuje, czy usunięty obiekt blob, czy migawka jest zachowywana, czy natychmiast usuwana przez operację usuwania. |
DeleteRetentionPolicy/Days | Wymagane tylko wtedy, gdy wartość DeleteRetentionPolicy/Enabled ma wartość true. Wskazuje liczbę dni przechowywania usuniętego obiektu blob. Wszystkie dane starsze niż ta wartość są trwale usuwane. Minimalna wartość, którą można określić, to 1 ; największa wartość to 365 . |
StaticWebsite | Opcjonalny. Aby ustawić właściwości StaticWebsite , wywołaj metodę Set Blob Service Properties przy użyciu wersji 2018-03-28 lub nowszej. Dotyczy tylko usługi Blob Storage. |
StaticWebsite/Enabled | Wymagane. Wskazuje, czy obsługa statycznej witryny internetowej jest włączona dla określonego konta. |
StaticWebsite/IndexDocument | Opcjonalny. Strona internetowa, którą usługa Azure Storage obsługuje dla żądań do katalogu głównego witryny internetowej lub dowolnego podfolderu (na przykład index.html ). Wartość jest uwzględniana w wielkości liter. |
StaticWebsite/DefaultIndexDocumentPath | Opcjonalny. Ścieżka bezwzględna do strony internetowej, którą usługa Azure Storage obsługuje dla żądań, które nie odpowiadają istniejącemu plikowi. Zawartość strony jest zwracana za pomocą HTTP 200 OK polecenia (na przykład index.html ). Element wzajemnie wyklucza się z elementem StaticWebsite/IndexDocument . Wartość jest uwzględniana w wielkości liter. |
StaticWebsite/ErrorDocument404Path | Opcjonalny. Ścieżka bezwzględna do strony internetowej, którą usługa Azure Storage obsługuje dla żądań, które nie odpowiadają istniejącemu plikowi. Zawartość strony jest zwracana za pomocą HTTP 404 Not Found polecenia (na przykład error/404.html ). W każdej statycznej witrynie internetowej jest obsługiwana tylko jedna niestandardowa strona 404. Wartość jest uwzględniana w wielkości liter. |
Reakcja
Odpowiedź zawiera kod stanu HTTP i zestaw nagłówków odpowiedzi.
Kod stanu
Operacja zakończona powodzeniem zwraca kod stanu 202 (Zaakceptowano).
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 |
Jednoznacznie identyfikuje żądanie skierowane do usługi. |
x-ms-version |
Określa wersję operacji używanej dla odpowiedzi. Aby uzyskać więcej informacji, zobacz Przechowywanie wersji usług Azure Storage. |
x-ms-client-request-id |
Może 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 znajduje się w żądaniu, a wartość nie zawiera więcej niż 1024 widocznych znaków ASCII.
x-ms-client-request-id Jeśli nagłówek nie jest obecny w żądaniu, nie będzie on obecny w odpowiedzi. |
Treść odpowiedzi
Brak.
Autoryzacja
Autoryzacja jest wymagana podczas wywoływania dowolnej operacji dostępu do danych w usłudze Azure Storage. Możesz autoryzować operację zgodnie z Set Blob Service Properties
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 Set Blob Service Properties
operacji oraz najmniej uprzywilejowanej wbudowanej roli RBAC platformy Azure, która obejmuje tę akcję:
- Akcja RBAC platformy Azure:Microsoft.Storage/storageAccounts/blobServices/write
- Rola wbudowana z najmniejszymi uprawnieniami:Współautor konta magazynu
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
Następujące ograniczenia i ograniczenia dotyczą reguł MECHANIZMU CORS w usłudze Azure Storage:
Można przechowywać maksymalnie pięć reguł.
Maksymalny rozmiar wszystkich ustawień reguł CORS dla żądania, z wyłączeniem tagów XML, nie powinien przekraczać 2 KiB.
Długość dozwolonego nagłówka, uwidocznionego nagłówka lub dozwolonego źródła nie powinna przekraczać 256 znaków.
Dozwolone nagłówki i uwidocznione nagłówki mogą być następujące:
Nagłówki literału, w których podano dokładną nazwę nagłówka, taką jak x-ms-meta-przetworzone. W żądaniu można określić maksymalnie 64 nagłówki literału.
Prefiks nagłówków, w których znajduje się prefiks nagłówka, taki jak x-ms-meta-data*. Określenie prefiksu w ten sposób umożliwia lub uwidacznia dowolny nagłówek rozpoczynający się od określonego prefiksu. W żądaniu można określić maksymalnie dwa prefiksy nagłówków.
Metody (lub czasowniki HTTP) określone w elemecie AllowedMethods muszą być zgodne z metodami obsługiwanymi przez interfejsy API usługi Azure Storage. Obsługiwane metody to DELETE, GET, HEAD, MERGE, PATCH, POST, OPTIONS i PUT.
Określanie reguł CORS dla żądania jest opcjonalne. Jeśli wywołasz wywołanie Set Blob Service Properties
bez określenia elementu Cors w treści żądania, wszystkie istniejące reguły MECHANIZMU CORS zostaną zachowane.
Aby wyłączyć mechanizm CORS, wywołaj Set Blob Service Properties
pustą regułę CORS (czyli</Cors>
) i nie ma wewnętrznych reguł CORS. To wywołanie usuwa wszystkie istniejące reguły i wyłącza mechanizm CORS dla usługi Blob Storage.
Wszystkie elementy reguły CORS są wymagane, jeśli określono element CorsRule . Żądanie kończy się niepowodzeniem z kodem błędu 400 (Bad Request
), jeśli brakuje jakiegokolwiek elementu.
Od wersji 2013-08-15 elementy ustawień XML są opcjonalne, dzięki czemu można zaktualizować określony element, wysyłając kod XML zawierający tylko zaktualizowany element. Inne ustawienia nie mają wpływu.
Aby uzyskać szczegółowe informacje na temat reguł CORS i logiki oceny, zobacz Obsługa mechanizmu CORS dla usług Azure Storage.
Rozliczenia
Żądania cenowe 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 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 Set Blob Service Properties
żądań na podstawie typu konta magazynu:
Operacja | Typ konta magazynu | Kategoria rozliczeń |
---|---|---|
Ustawianie właściwości usługi Blob Service | Blokowy obiekt blob w warstwie Premium Standardowa ogólnego przeznaczenia, wersja 2 |
Inne operacje |
Ustawianie właściwości usługi Blob Service | Standardowa ogólnego przeznaczenia, wersja 1 | Operacje zapisu |
Aby dowiedzieć się więcej o cenach dla określonej kategorii rozliczeń, zobacz Azure Blob Storage Cennik.
Przykładowe żądanie i odpowiedź
Następujący przykładowy identyfikator URI wysyła żądanie zmiany właściwości usługi Blob Storage dla fikcyjnego konta magazynu o nazwie myaccount:
PUT https://myaccount.blob.core.windows.net/?restype=service&comp=properties HTTP/1.1
Żądanie jest wysyłane z następującymi nagłówkami:
x-ms-version: 2018-03-28
x-ms-date: Tue, 12 Sep 2018 23:38:35 GMT
Authorization: SharedKey myaccount:Z1lTLDwtq5o1UYQluucdsXk6/iB7YxEu0m6VofAEkUE=
Host: myaccount.blob.core.windows.net
Żądanie jest wysyłane z następującą treścią XML:
<?xml version="1.0" encoding="utf-8"?>
<StorageServiceProperties>
<Logging>
<Version>1.0</Version>
<Delete>true</Delete>
<Read>false</Read>
<Write>true</Write>
<RetentionPolicy>
<Enabled>true</Enabled>
<Days>7</Days>
</RetentionPolicy>
</Logging>
<HourMetrics>
<Version>1.0</Version>
<Enabled>true</Enabled>
<IncludeAPIs>false</IncludeAPIs>
<RetentionPolicy>
<Enabled>true</Enabled>
<Days>7</Days>
</RetentionPolicy>
</HourMetrics>
<MinuteMetrics>
<Version>1.0</Version>
<Enabled>true</Enabled>
<IncludeAPIs>true</IncludeAPIs>
<RetentionPolicy>
<Enabled>true</Enabled>
<Days>7</Days>
</RetentionPolicy>
</MinuteMetrics>
<Cors>
<CorsRule>
<AllowedOrigins>http://www.fabrikam.com,http://www.contoso.com</AllowedOrigins>
<AllowedMethods>GET,PUT</AllowedMethods>
<MaxAgeInSeconds>500</MaxAgeInSeconds>
<ExposedHeaders>x-ms-meta-data*,x-ms-meta-customheader</ExposedHeaders>
<AllowedHeaders>x-ms-meta-target*,x-ms-meta-customheader</AllowedHeaders>
</CorsRule>
</Cors>
<DeleteRetentionPolicy>
<Enabled>true</Enabled>
<Days>5</Days>
</DeleteRetentionPolicy>
<StaticWebsite>
<Enabled>true</Enabled>
<IndexDocument>index.html</IndexDocument>
<ErrorDocument404Path>error/404.html</ErrorDocument404Path>
</StaticWebsite>
<DefaultServiceVersion>2018-03-28</DefaultServiceVersion>
</StorageServiceProperties>
Po wysłaniu żądania zostanie zwrócona następująca odpowiedź:
HTTP/1.1 202 Accepted
Transfer-Encoding: chunked
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id: cb939a31-0cc6-49bb-9fe5-3327691f2a30
x-ms-version: 2018-03-28
Date: Tue, 12 Sep 2018 23:38:35 GMT
Zobacz też
Analityka magazynu
Obsługa mechanizmu CORS dla usług Azure Storage
Specyfikacja PROTOKOŁU HTTP MECHANIZMU CORS