Wybieranie i konfigurowanie odpowiedniej metody dostępu do tabel platformy Azure
Usługa Azure Storage obsługuje używanie identyfikatora Entra firmy Microsoft do autoryzowania żądań do danych tabeli. Za pomocą identyfikatora Entra firmy Microsoft możesz użyć kontroli dostępu opartej na rolach (RBAC) platformy Azure, aby udzielić uprawnień jednostce zabezpieczeń, która może być użytkownikiem, grupą lub jednostką usługi aplikacji. 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 Table Service.
Autoryzowanie żądań względem usługi Azure Storage przy użyciu identyfikatora Entra firmy Microsoft zapewnia lepsze zabezpieczenia i łatwość użycia w przypadku autoryzacji klucza współdzielonego. Firma Microsoft zaleca używanie autoryzacji Entra firmy Microsoft z aplikacjami tabel, jeśli jest to możliwe, aby zapewnić dostęp z minimalnymi wymaganymi uprawnieniami.
Autoryzacja z identyfikatorem Entra firmy Microsoft jest dostępna dla wszystkich zastosowań ogólnego przeznaczenia we wszystkich regionach publicznych i chmurach krajowych. Tylko konta magazynu utworzone za pomocą modelu wdrażania usługi Azure Resource Manager obsługują autoryzację firmy Microsoft Entra.
Omówienie identyfikatora Entra firmy Microsoft dla tabel
Gdy podmiot zabezpieczeń (użytkownik, grupa lub aplikacja) próbuje uzyskać dostęp do zasobu tabeli, żądanie musi być autoryzowane. W przypadku identyfikatora Entra firmy Microsoft dostęp do zasobu jest procesem dwuetapowym. Najpierw tożsamość podmiotu zabezpieczeń jest uwierzytelniana i zwracany jest token OAuth 2.0. Następnie token jest przekazywany jako część żądania do usługi Table i używany przez usługę do autoryzowania dostępu do określonego zasobu.
Krok uwierzytelniania wymaga, aby aplikacja zażądała tokenu dostępu OAuth 2.0 w czasie wykonywania. Jeśli aplikacja działa z poziomu jednostki platformy Azure, takiej jak maszyna wirtualna platformy Azure, zestaw skalowania maszyn wirtualnych lub aplikacja usługi Azure Functions, może używać tożsamości zarządzanej do uzyskiwania dostępu do tabel.
Krok autoryzacji wymaga przypisania co najmniej jednej roli platformy Azure do podmiotu zabezpieczeń. Usługa Azure Storage udostępnia role platformy Azure, które obejmują typowe zestawy uprawnień dla danych tabeli. Role przypisane do podmiotu zabezpieczeń określają uprawnienia, które będą miały podmiot zabezpieczeń.
Poniższa tabela zawiera dodatkowe informacje dotyczące autoryzowania dostępu do danych w różnych scenariuszach:
Przypisywanie ról platformy Azure na potrzeby praw dostępu
Firma Microsoft Entra autoryzuje prawa dostępu do zabezpieczonych zasobów za pośrednictwem kontroli dostępu na podstawie ról (RBAC) platformy Azure. 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 tabeli. Możesz również zdefiniować role niestandardowe na potrzeby dostępu do danych tabeli.
Po przypisaniu roli platformy Azure do podmiotu zabezpieczeń firmy Microsoft Entra platforma Azure udziela dostępu do tych zasobów dla tego podmiotu zabezpieczeń. Podmiot zabezpieczeń firmy Microsoft Entra może być użytkownikiem, grupą, jednostką usługi aplikacji lub tożsamością zarządzaną dla zasobów platformy Azure.
Zakres zasobu
Przed przypisaniem roli RBAC platformy Azure do podmiotu zabezpieczeń określ zakres dostępu, który powinien mieć podmiot zabezpieczeń. Najlepsze rozwiązania określają, że zawsze najlepiej przyznać tylko najwęższy możliwy zakres. Role RBAC platformy Azure zdefiniowane w szerszym zakresie są dziedziczone przez pod nimi zasoby.
Dostęp do zasobów tabeli platformy Azure można ograniczyć na następujących poziomach, począwszy od najwęższego zakresu:
- Pojedyncza tabela . W tym zakresie przypisanie roli ma zastosowanie do określonej tabeli.
- Konto magazynu W tym zakresie przypisanie roli ma zastosowanie do wszystkich tabel w ramach konta.
- grupa zasobów. W tym zakresie przypisanie roli ma zastosowanie do wszystkich tabel we wszystkich kontach magazynu w grupie zasobów.
- Subskrypcja. W tym zakresie przypisanie roli ma zastosowanie do wszystkich tabel we wszystkich kontach magazynu we wszystkich grupach zasobów w subskrypcji.
- Grupa zarządzania. W tym zakresie przypisanie roli ma zastosowanie do wszystkich tabel we wszystkich kontach magazynu we wszystkich grupach zasobów we wszystkich subskrypcjach w grupie zarządzania.
Aby uzyskać więcej informacji na temat zakresu przypisań ról RBAC platformy Azure, zobacz Omówienie zakresu kontroli dostępu opartej na rolach platformy Azure.
Wbudowane role platformy Azure dla tabel
Kontrola dostępu oparta na rolach platformy Azure zapewnia wbudowane role umożliwiające autoryzowanie dostępu do danych tabeli przy użyciu identyfikatora Entra firmy Microsoft i protokołu OAuth. Wbudowane role, które zapewniają uprawnienia do tabel w usłudze Azure Storage, obejmują:
- Współautor danych tabeli usługi Storage: służy do udzielania uprawnień odczytu/zapisu/usuwania do zasobów usługi Table Storage.
- Czytelnik danych tabel usługi Storage: służy do udzielania uprawnień tylko do odczytu do zasobów usługi Table Storage.
Aby dowiedzieć się, jak przypisać wbudowaną rolę platformy Azure do podmiotu zabezpieczeń, zobacz Przypisywanie roli platformy Azure w celu uzyskania dostępu do danych tabeli. Aby dowiedzieć się, jak wyświetlić listę ról RBAC platformy Azure i ich uprawnień, zobacz Wyświetlanie listy definicji ról platformy Azure.
Aby uzyskać więcej informacji na temat sposobu definiowania ról wbudowanych dla usługi Azure Storage, zobacz Omówienie definicji ról. Aby uzyskać informacje na temat tworzenia ról niestandardowych platformy Azure, zobacz Role niestandardowe platformy Azure.
Tylko role jawnie zdefiniowane dla dostępu do danych zezwalają podmiotowi zabezpieczeń na dostęp do danych tabeli. Wbudowane role, takie jak Właściciel, Współautor i Współautor konta magazynu, umożliwiają podmiotowi zabezpieczeń zarządzanie kontem magazynu, ale nie zapewniają dostępu do danych tabeli w ramach tego konta za pośrednictwem identyfikatora Microsoft Entra. Jeśli jednak rola zawiera wartość Microsoft.Storage/storageAccounts/listKeys/action, użytkownik, któremu przypisano tę rolę, może uzyskać dostęp do danych na koncie magazynu za pośrednictwem autoryzacji klucza współdzielonego z kluczami dostępu do konta.
Aby uzyskać szczegółowe informacje na temat wbudowanych ról platformy Azure dla usługi Azure Storage dla usług danych i usługi zarządzania, zobacz sekcję Storage w temacie Role wbudowane platformy Azure dla kontroli dostępu opartej na rolach platformy Azure. Ponadto aby uzyskać informacje o różnych typach ról, które zapewniają uprawnienia na platformie Azure, zobacz Role platformy Azure, Role firmy Microsoft Entra i klasyczne role administratora subskrypcji.
Propagacja przypisań ról platformy Azure może potrwać do 30 minut.
Uprawnienia dostępu do operacji danych
Aby uzyskać szczegółowe informacje na temat uprawnień wymaganych do wywoływania określonych operacji usługi Table Service, zobacz Uprawnienia do wywoływania operacji danych.