Autoryzowanie dostępu do usługi Azure Blob Storage przy użyciu warunków przypisywania ról platformy Azure

Kontrola dostępu oparta na atrybutach (ABAC) to strategia autoryzacji, która definiuje poziomy dostępu na podstawie atrybutów skojarzonych z jednostkami zabezpieczeń, zasobami, środowiskiem i samymi żądaniami. Za pomocą funkcji ABAC można udzielić podmiotowi zabezpieczeń dostępu do zasobu na podstawie warunku wyrażonego jako predykat przy użyciu tych atrybutów.

Usługa Azure ABAC bazuje na kontroli dostępu opartej na rolach (RBAC) platformy Azure przez dodanie warunków do przypisań ról platformy Azure. Umożliwia tworzenie warunków przypisywania ról na podstawie atrybutów podmiotu zabezpieczeń, zasobu, żądania i środowiska.

Ważne

Kontrola dostępu oparta na atrybutach platformy Azure (Azure ABAC) jest ogólnie dostępna do kontrolowania dostępu do usług Azure Blob Storage, Azure Data Lake Storage Gen2 i Azure Queues przy użyciu requestatrybutów , resource, environmenti principal zarówno w warstwach wydajności konta magazynu w warstwie Standardowa, jak i Premium Storage. Obecnie atrybut zasobu metadanych kontenera i lista obiektów blob dołączania atrybutu żądania są dostępne w wersji zapoznawczej. Aby uzyskać pełne informacje o stanie funkcji ABAC dla usługi Azure Storage, zobacz Stan funkcji warunku w usłudze Azure Storage.

Zobacz Dodatkowe warunki użytkowania wersji zapoznawczych platformy Microsoft Azure, aby zapoznać się z postanowieniami prawnymi dotyczącymi funkcji platformy Azure, które są w wersji beta lub wersji zapoznawczej albo w inny sposób nie zostały jeszcze wydane jako ogólnie dostępne.

Omówienie warunków w usłudze Azure Storage

Możesz użyć identyfikatora Entra firmy Microsoft (Microsoft Entra ID), aby autoryzować żądania do zasobów usługi Azure Storage przy użyciu kontroli dostępu opartej na rolach platformy Azure. Kontrola dostępu oparta na rolach platformy Azure ułatwia zarządzanie dostępem do zasobów, definiując, kto ma dostęp do zasobów i co mogą robić z tymi zasobami, przy użyciu definicji ról i przypisań ról. Usługa Azure Storage definiuje zestaw wbudowanych ról platformy Azure, które obejmują typowe zestawy uprawnień używanych do uzyskiwania dostępu do danych usługi Azure Storage. Możesz również zdefiniować role niestandardowe z wybranymi zestawami uprawnień. Usługa Azure Storage obsługuje przypisania ról zarówno dla kont magazynu, jak i kontenerów obiektów blob.

Usługa Azure ABAC bazuje na kontroli dostępu opartej na rolach platformy Azure przez dodanie warunków przypisywania ról w kontekście określonych akcji. Warunek przypisania roli to dodatkowa kontrola, która jest oceniana, gdy akcja zasobu magazynu jest autoryzowana. Ten warunek jest wyrażony jako predykat przy użyciu atrybutów skojarzonych z dowolnym z następujących elementów:

  • Podmiot zabezpieczeń, który żąda autoryzacji
  • Zasób, do którego żądano dostępu
  • Parametry żądania
  • Środowisko, w którym jest wykonywane żądanie

Korzyści wynikające z używania warunków przypisania ról to:

  • Włącz bardziej precyzyjny dostęp do zasobów — na przykład jeśli chcesz przyznać użytkownikowi dostęp do odczytu do obiektów blob na kontach magazynu tylko wtedy, gdy obiekty blob są oznaczone jako Project=Sierra, możesz użyć warunków w akcji odczytu przy użyciu tagów jako atrybutu.
  • Zmniejsz liczbę przypisań ról, którymi musisz utworzyć i zarządzać — można to zrobić przy użyciu uogólnionego przypisania roli dla grupy zabezpieczeń, a następnie ograniczenia dostępu dla poszczególnych członków grupy przy użyciu warunku, który pasuje do atrybutów podmiotu zabezpieczeń z atrybutami określonego zasobu dostępnego (na przykład obiektu blob lub kontenera).
  • Express access control rules in terms of attributes with business meaning — na przykład można wyrazić warunki przy użyciu atrybutów reprezentujących nazwę projektu, aplikację biznesową, funkcję organizacji lub poziom klasyfikacji.

Kompromis w korzystaniu z warunków polega na tym, że potrzebujesz ustrukturyzowanej i spójnej taksonomii podczas używania atrybutów w całej organizacji. Atrybuty muszą być chronione, aby uniemożliwić naruszenie zabezpieczeń dostępu. Ponadto warunki muszą być starannie zaprojektowane i poddane przeglądowi pod kątem ich wpływu.

Warunki przypisywania ról w usłudze Azure Storage są obsługiwane w przypadku usługi Azure Blob Storage. Można również używać warunków z kontami, które mają włączoną funkcję hierarchicznej przestrzeni nazw (HNS) (Data Lake Storage Gen2).

Obsługiwane atrybuty i operacje

Aby osiągnąć te cele, można skonfigurować warunki przypisania ról dla funkcji DataActions . Możesz użyć warunków z rolą niestandardową lub wybrać wbudowane role. Należy pamiętać, że warunki nie są obsługiwane w przypadku akcji zarządzania za pośrednictwem dostawcy zasobów magazynu.

Możesz dodawać warunki do wbudowanych ról lub ról niestandardowych. Wbudowane role, na których można używać warunków przypisania ról, obejmują:

Warunki z rolami niestandardowymi można używać tak długo, jak rola obejmuje akcje, które obsługują warunki.

Jeśli pracujesz z warunkami na podstawie tagów indeksu obiektów blob, należy użyć właściciela danych obiektu blob usługi Storage, ponieważ uprawnienia do operacji tagów są uwzględniane w tej roli.

Uwaga

Tagi indeksu obiektów blob nie są obsługiwane dla kont magazynu usługi Data Lake Storage Gen2, które używają hierarchicznej przestrzeni nazw. Nie należy tworzyć warunków przypisywania ról przy użyciu tagów indeksu na kontach magazynu z włączoną usługą HNS.

Format warunku przypisania roli platformy Azure umożliwia używanie atrybutów @Principal, @Resource@Request lub @Environment w warunkach. Atrybut @Principal jest niestandardowym atrybutem zabezpieczeń w jednostce, takiej jak użytkownik, aplikacja przedsiębiorstwa (jednostka usługi) lub tożsamość zarządzana. Atrybut @Resource odnosi się do istniejącego atrybutu zasobu magazynu, do którego uzyskuje się dostęp, takiego jak konto magazynu, kontener lub obiekt blob. Atrybut @Request odnosi się do atrybutu lub parametru uwzględnionego w żądaniu operacji magazynu. Atrybut @Environment odnosi się do środowiska sieciowego lub daty i godziny żądania.

Kontrola dostępu oparta na rolach platformy Azure obsługuje ograniczoną liczbę przypisań ról na subskrypcję. Jeśli musisz utworzyć tysiące przypisań ról platformy Azure, możesz napotkać ten limit. Zarządzanie setkami lub tysiącami przypisań ról może być trudne. W niektórych przypadkach można użyć warunków, aby zmniejszyć liczbę przypisań ról na koncie magazynu i ułatwić zarządzanie nimi. Zarządzanie przypisaniami ról można skalować przy użyciu warunków i niestandardowych atrybutów zabezpieczeń firmy Microsoft entra dla podmiotów zabezpieczeń.

Stan funkcji warunku w usłudze Azure Storage

Kontrola dostępu oparta na atrybutach platformy Azure (Azure ABAC) jest ogólnie dostępna do kontrolowania dostępu do usług Azure Blob Storage, Azure Data Lake Storage Gen2 i Azure Queues przy użyciu requestatrybutów , resource, environmenti principal zarówno w warstwach wydajności konta magazynu w warstwie Standardowa, jak i Premium Storage. Obecnie atrybut zasobu metadanych kontenera i lista obiektów blob dołączania atrybutu żądania są dostępne w wersji zapoznawczej.

W poniższej tabeli przedstawiono bieżący stan abAC według typu zasobu magazynu i typu atrybutu. Wyświetlane są również wyjątki dotyczące określonych atrybutów.

Typy zasobów Typy atrybutów Atrybuty Dostępność
Obiekty blob
Usługa Data Lake Storage 2. generacji
Kolejki
Żądanie
Zasób
Środowisko
Główne
Wszystkie atrybuty z wyjątkiem atrybutów zanotowany w tej tabeli Ogólna dostępność
Usługa Data Lake Storage 2. generacji Zasób Migawka Wersja Preview
Obiekty blob
Usługa Data Lake Storage 2. generacji
Zasób Metadane kontenera Wersja Preview
Obiekty blob Żądanie Lista obiektów blob include Wersja Preview

Zobacz Dodatkowe warunki użytkowania wersji zapoznawczych platformy Microsoft Azure, aby zapoznać się z postanowieniami prawnymi dotyczącymi funkcji platformy Azure, które są w wersji beta lub wersji zapoznawczej albo w inny sposób nie zostały jeszcze wydane jako ogólnie dostępne.

Uwaga

Niektóre funkcje magazynu nie są obsługiwane w przypadku kont magazynu usługi Data Lake Storage Gen2, które używają hierarchicznej przestrzeni nazw (HNS). Aby dowiedzieć się więcej, zobacz Obsługa funkcji usługi Blob Storage.

Następujące atrybuty ABAC nie są obsługiwane, gdy hierarchiczna przestrzeń nazw jest włączona dla konta magazynu:

Następne kroki

Zobacz też