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. Grupuje ustawienia rejestrowania usługi Azure Analytics.
Metryki Wymagane w wersji 2012-02-12 i starszych. Nie dotyczy wersji 2013-08-15 lub nowszej. Grupuje ustawienia 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. Grupuje ustawienia 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. Grupuje ustawienia 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.
Elementy IncludeAPI 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 dla usługi magazynu są włączone zasady przechowywania.
RetentionPolicy/Days Wymagane tylko w przypadku włączenia zasad przechowywania. Wskazuje liczbę dni przechowywania metryk lub danych rejestrowania. Wszystkie dane starsze niż ta wartość są usuwane. Minimalna wartość, którą można określić, to 1; największa wartość to 365 (jeden 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ę, która ma być używana dla żądań do usługi Blob Storage, jeśli wersja żądania przychodzącego nie jest określona. Możliwe wartości obejmują wersję 2008-10-27 lub nowszą. Aby uzyskać więcej informacji na temat odpowiednich wersji, zobacz Przechowywanie wersji dla usług Azure Storage.

Dotyczy tylko usługi Blob Storage.
Cors Opcjonalny. Element Cors jest obsługiwany w wersji 2013-08-15 lub nowszej. Grupuje wszystkie reguły CORS.

Pominięcie tej grupy elementów nie spowoduje zastąpienia istniejących ustawień mechanizmu CORS.
CorsRule Opcjonalny. Określa regułę 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 buforowania odpowiedzi wstępnej przez klienta/przeglądarkę.
AllowedHeaders 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 Set Blob Service Properties metodę przy użyciu wersji 2017-07-29 lub nowszej. Grupuje ustawienia usuwania nietrwałego. Dotyczy tylko usługi Blob Storage.
DeleteRetentionPolicy/Włączone Wymagane. Wskazuje, czy usunięty obiekt blob lub migawka jest zachowywany, czy natychmiast usuwany 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ększą wartością jest 365.
StaticWebsite Opcjonalny. Aby ustawić właściwości StaticWebsite , wywołaj Set Blob Service Properties metodę 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). W wartości jest uwzględniana wielkość 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 elementu (na przykład index.html). Element wyklucza się wzajemnie z elementem StaticWebsite/IndexDocument. W wartości jest uwzględniana wielkość 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 elementu (na przykład error/404.html). W każdej statycznej witrynie internetowej jest obsługiwana tylko jedna niestandardowa strona 404. W wartości jest uwzględniana wielkość 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 standardowe nagłówki 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.

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 wymieniono akcję RBAC niezbędną do wywołania Set Blob Service Properties operacji przez użytkownika, grupę lub jednostkę usługi Microsoft Entra oraz najmniej uprzywilejowaną wbudowaną rolę 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 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