Uzyskiwanie listy ACL kontenerów
Operacja Get Container ACL
pobiera uprawnienia dla określonego kontenera. Uprawnienia wskazują, czy dane kontenera mogą być dostępne publicznie.
Od wersji 2009-09-19 uprawnienia kontenera zapewniają następujące opcje zarządzania dostępem do kontenera:
pełny publiczny dostęp do odczytu: dane kontenera i obiektu blob można odczytywać za pośrednictwem żądania anonimowego. Klienci mogą wyliczać obiekty blob w kontenerze za pośrednictwem żądania anonimowego, ale nie mogą wyliczać kontenerów na koncie magazynu.
publiczny dostęp do odczytu dla obiektów blob tylko: dane obiektów blob w tym kontenerze mogą być odczytywane za pośrednictwem żądania anonimowego, ale dane kontenera nie są dostępne. Klienci nie mogą wyliczać obiektów blob w kontenerze za pośrednictwem żądania anonimowego.
Nie ma publicznego dostępu do odczytu: dane kontenera i obiektu blob mogą być odczytywane tylko przez właściciela konta.
Get Container ACL
zwraca również szczegółowe informacje o wszelkich zasadach dostępu na poziomie kontenera określonych w kontenerze, które mogą być używane z sygnaturami dostępu współdzielonego. Aby uzyskać więcej informacji, zobacz Definiowanie przechowywanych zasad dostępu.
Cały publiczny dostęp do kontenera jest anonimowy, podobnie jak dostęp za pośrednictwem sygnatury dostępu współdzielonego.
Prosić
Żądanie Get Container ACL
można skonstruować w następujący sposób. Zalecamy używanie protokołu HTTPS. Zastąp myaccount nazwą konta magazynu:
Metoda | Identyfikator URI żądania | Wersja PROTOKOŁU HTTP |
---|---|---|
GET/HEAD |
https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=acl |
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 Storage jako 127.0.0.1:10000
, a następnie nazwę emulowanego konta magazynu:
Metoda | Identyfikator URI żądania | Wersja PROTOKOŁU HTTP |
---|---|---|
GET/HEAD |
http://127.0.0.1:10000/devstoreaccount1/mycontainer?restype=container&comp=acl |
HTTP/1.1 |
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 |
Fakultatywny. Parametr timeout jest wyrażony w sekundach. Aby uzyskać więcej informacji, zobacz Ustawianie limitów czasu dla operacji usługi Blob Storage. |
Kody błędów żądania
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-lease-id: <ID> |
Opcjonalnie, wersja 2012-02-12 lub nowsza. Jeśli zostanie określony, Get Container ACL powiedzie się tylko wtedy, gdy dzierżawa kontenera jest aktywna i odpowiada temu identyfikatorowi. Jeśli nie ma aktywnej dzierżawy lub identyfikator nie jest zgodny, 412 (Precondition Failed) zostanie zwrócona. |
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 |
Fakultatywny. Zapewnia nieprzezroczystą wartość wygenerowaną przez klienta z limitem znaków 1-kibibyte (KiB), który jest rejestrowany w dziennikach podczas konfigurowania rejestrowania. Zdecydowanie zalecamy używanie tego nagłówka do korelowania działań po stronie klienta z żądaniami odbieranymi przez serwer. Aby uzyskać więcej informacji, zobacz Monitor Azure Blob Storage. |
Treść żądania
Żaden.
Odpowiedź
Odpowiedź zawiera kod stanu HTTP, zestaw nagłówków odpowiedzi i treść odpowiedzi.
Kod stanu
Pomyślna operacja zwraca kod stanu 200 (OK).
Aby uzyskać informacje o kodach stanu, zobacz Stan i kody błędów.
Kody błędów 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 |
---|---|
x-ms-blob-public-access |
Wskazuje, czy dane w kontenerze mogą być dostępne publicznie i na poziomie dostępu. Możliwe wartości to: - container : wskazuje pełny publiczny dostęp do odczytu dla danych kontenera i obiektów blob. Klienci mogą wyliczać obiekty blob w kontenerze za pośrednictwem żądania anonimowego, ale nie mogą wyliczać kontenerów na koncie magazynu.- blob: Wskazuje publiczny dostęp do odczytu dla obiektów blob. Dane obiektów blob w tym kontenerze można odczytywać za pośrednictwem żądania anonimowego, ale dane kontenera nie są dostępne. Klienci nie mogą wyliczać obiektów blob w kontenerze za pośrednictwem żądania anonimowego.- true: wersje starsze niż tylko 2016-05-31. Wskazuje, że kontener został oznaczony jako pełny publiczny dostęp do odczytu przy użyciu wersji starszej niż 2009-09-19. Od wersji 2016-05-31 ta wartość jest zwracana jako container .Jeśli ten nagłówek nie zostanie zwrócony w odpowiedzi, kontener jest prywatny dla właściciela konta. |
ETag |
Tag jednostki dla kontenera. Jeśli wersja żądania to 2011-08-18 lub nowsza, wartość ETag jest ujęta w cudzysłów. |
Last-Modified |
Zwraca datę i godzinę ostatniej modyfikacji kontenera. Format daty jest zgodny z RFC 1123. Aby uzyskać więcej informacji, zobacz Reprezentowanie wartości daty/godziny w kodach błędów. Każda operacja modyfikującą kontener lub jego właściwości lub metadane aktualizuje czas ostatniej modyfikacji. Operacje na obiektach blob nie mają wpływu na czas ostatniej modyfikacji kontenera. |
x-ms-request-id |
Jednoznacznie identyfikuje żądanie, które zostało wykonane, i może służyć do rozwiązywania problemów z żądaniem. Aby uzyskać więcej informacji, zobacz Rozwiązywanie problemów z operacjami interfejsu API. |
x-ms-version |
Wskazuje wersję usługi, która została użyta do wykonania żądania. Ten nagłówek jest zwracany dla żądań, które zostały wykonane w wersji 2009-09-19 lub nowszej. |
Date |
Wartość daty/godziny UTC wygenerowana przez usługę, która wskazuje godzinę zainicjowania odpowiedzi. |
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 nagłówka x-ms-client-request-id , jeśli znajduje się w żądaniu, a wartość nie zawiera więcej niż 1024 widocznych znaków ASCII. Jeśli nagłówek x-ms-client-request-id nie znajduje się w żądaniu, ten nagłówek nie jest obecny w odpowiedzi. |
Treść odpowiedzi
Jeśli dla kontenera określono zasady dostępu na poziomie kontenera, Get Container ACL
zwraca podpisany identyfikator i zasady dostępu w treści odpowiedzi.
<?xml version="1.0" encoding="utf-8"?>
<SignedIdentifiers>
<SignedIdentifier>
<Id>unique-value</Id>
<AccessPolicy>
<Start>start-time</Start>
<Expiry>expiry-time</Expiry>
<Permission>abbreviated-permission-list</Permission>
</AccessPolicy>
</SignedIdentifier>
</SignedIdentifiers>
Przykładowa odpowiedź
Response Status:
HTTP/1.1 200 OK
Response Headers:
Transfer-Encoding: chunked
x-ms-blob-public-access: container
Date: Sun, 25 Sep 2011 20:28:22 GMT
ETag: "0x8CAFB82EFF70C46"
Last-Modified: Sun, 25 Sep 2011 19:42:18 GMT
x-ms-version: 2011-08-18
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
<?xml version="1.0" encoding="utf-8"?>
<SignedIdentifiers>
<SignedIdentifier>
<Id>MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI=</Id>
<AccessPolicy>
<Start>2009-09-28T08:49:37.0000000Z</Start>
<Expiry>2009-09-29T08:49:37.0000000Z</Expiry>
<Permission>rwd</Permission>
</AccessPolicy>
</SignedIdentifier>
</SignedIdentifiers>
Autoryzacja
Autoryzacja jest wymagana podczas wywoływania dowolnej operacji dostępu do danych w usłudze Azure Storage. Możesz autoryzować operację Get Container ACL
zgodnie z poniższym opisem.
Ważny
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 Get Container ACL
oraz najmniej uprzywilejowanej wbudowanej roli RBAC platformy Azure, która obejmuje tę akcję:
- akcję RBAC platformy Azure:Microsoft.Storage/storageAccounts/blobServices/containers/getAcl/action
- wbudowana rola Najmniej uprzywilejowana:właściciel danych obiektu blob usługi Storage
Aby dowiedzieć się więcej na temat przypisywania ról przy użyciu kontroli dostępu opartej na rolach platformy Azure, zobacz Assign an Azure role for access to blob data.
Uwagi
Żaden. Aby uzyskać szczegółowe informacje na temat wpływu tej operacji na koszty, zobacz informacje dotyczące rozliczeń.
Rozliczeń
Żą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ń Get Container ACL
na podstawie typu konta magazynu:
Operacja | Typ konta magazynu | Kategoria rozliczeń |
---|---|---|
Uzyskiwanie listy ACL kontenerów | Blokowy obiekt blob w warstwie Premium Standardowa ogólnego przeznaczenia, wersja 2 |
Inne operacje |
Uzyskiwanie listy ACL kontenerów | Standardowa ogólnego przeznaczenia, wersja 1 | Operacje odczytu |
Aby dowiedzieć się więcej o cenach dla określonej kategorii rozliczeń, zobacz Cennik usługi Azure Blob Storage.
Zobacz też
Ograniczanie dostępu do kontenerów i obiektów blob
Definiowanie przechowywanych zasad dostępu
set Container ACL
autoryzowanie żądań do usługi Azure Storage
kody stanu i błędów
kody błędów usługi Blob Storage