Autorizace přístupu k tabulkám pomocí Microsoft Entra ID

Azure Storage podporuje použití Microsoft Entra ID k autorizaci požadavků na data tabulky. S ID Microsoft Entra můžete pomocí řízení přístupu na základě role v Azure (Azure RBAC) udělit oprávnění k objektu zabezpečení, což může být uživatel, skupina nebo instanční objekt aplikace. Instanční objekt zabezpečení je ověřený pomocí ID Microsoft Entra pro vrácení tokenu OAuth 2.0. Token se pak dá použít k autorizaci požadavku na službu Table Service.

Autorizace požadavků na Azure Storage pomocí Id Microsoft Entra poskytuje vynikající zabezpečení a snadné použití prostřednictvím autorizace sdíleného klíče. Microsoft doporučuje používat autorizaci Microsoft Entra s tabulkovými aplikacemi, pokud je to možné, abyste zajistili přístup s minimálními požadovanými oprávněními.

Autorizace s ID Microsoft Entra je k dispozici pro všechny obecné účely ve všech veřejných oblastech a národních cloudech. Autorizace Microsoft Entra podporují pouze účty úložiště vytvořené pomocí modelu nasazení Azure Resource Manager.

Přehled ID Microsoft Entra pro tabulky

Když se objekt zabezpečení (uživatel, skupina nebo aplikace) pokusí o přístup k prostředku tabulky, musí být požadavek autorizovaný. S ID Microsoft Entra je přístup k prostředku dvoustupňový proces. Nejprve se ověří identita objektu zabezpečení a vrátí se token OAuth 2.0. Dále se token předá jako součást požadavku službě Table Service a služba ho používá k autorizaci přístupu k zadanému prostředku.

Krok ověřování vyžaduje, aby aplikace požadovala přístupový token OAuth 2.0 za běhu. Pokud aplikace běží z entity Azure, jako je virtuální počítač Azure, škálovací sada virtuálních počítačů nebo aplikace Azure Functions, může pro přístup k tabulkám použít spravovanou identitu .

Krok autorizace vyžaduje, aby k objektu zabezpečení byla přiřazena jedna nebo více rolí Azure. Azure Storage poskytuje role Azure, které zahrnují běžné sady oprávnění pro data tabulek. Role přiřazené k objektu zabezpečení určují oprávnění, která bude mít objekt zabezpečení. Další informace o přiřazování rolí Azure pro přístup k tabulce najdete v tématu Přiřazení role Azure pro přístup k datům tabulek.

Následující tabulka odkazuje na další informace pro autorizaci přístupu k datům v různých scénářích:

Jazyk .NET Java JavaScript Python Přejít
Přehled ověřování pomocí Microsoft Entra ID Ověřování aplikací .NET pomocí služeb Azure Ověřování Azure s využitím Javy a identity Azure Ověřování javascriptových aplikací v Azure pomocí sady Azure SDK Ověřování aplikací v Pythonu do Azure pomocí sady Azure SDK
Ověřování pomocí instančních objektů pro vývojáře Ověřování aplikací .NET ve službách Azure během místního vývoje pomocí instančních objektů Ověřování Azure pomocí instančního objektu Ověřování aplikací JS do služeb Azure pomocí instančního objektu Ověřování aplikací Pythonu ve službách Azure během místního vývoje pomocí instančních objektů Ověřování pomocí sady Azure SDK for Go pomocí instančního objektu
Ověřování pomocí vývojářských nebo uživatelských účtů Ověřování aplikací .NET ve službách Azure během místního vývoje pomocí vývojářských účtů Ověřování Azure pomocí přihlašovacích údajů uživatele Ověřování aplikací JS do služeb Azure s využitím vývojových účtů Ověřování aplikací Pythonu ve službách Azure během místního vývoje pomocí vývojářských účtů Ověřování Azure pomocí sady Azure SDK for Go
Ověřování z aplikací hostovaných v Azure Ověřování aplikací hostovaných v Azure v prostředcích Azure pomocí sady Azure SDK pro .NET Ověřování aplikací Java hostovaných v Azure Ověřování javascriptových aplikací hostovaných v Azure v prostředcích Azure pomocí sady Azure SDK pro JavaScript Ověřování aplikací hostovaných v Azure v prostředcích Azure pomocí sady Azure SDK pro Python Ověřování pomocí sady Azure SDK for Go s využitím spravované identity
Ověřování z místních aplikací Ověřování prostředků Azure z aplikací .NET hostovaných místně Ověřování místních javascriptových aplikací pro prostředky Azure Ověřování prostředků Azure z aplikací Pythonu hostovaných místně
Přehled klientské knihovny identit Klientská knihovna Azure Identity pro .NET Klientská knihovna Azure Identity pro Javu Klientská knihovna Azure Identity pro JavaScript Klientská knihovna Azure Identity pro Python Klientská knihovna Azure Identity pro Go

Přiřazení rolí Azure pro přístupová práva

Microsoft Entra autorizuje přístupová práva k zabezpečeným prostředkům prostřednictvím řízení přístupu na základě role v Azure (Azure RBAC). Azure Storage definuje sadu předdefinovaných rolí Azure, které zahrnují běžné sady oprávnění používaných pro přístup k datům tabulek. Můžete také definovat vlastní role pro přístup k datům tabulky.

Když je role Azure přiřazená k objektu zabezpečení Microsoft Entra, Azure udělí přístup k těmto prostředkům pro tento objekt zabezpečení. Objekt zabezpečení Microsoft Entra může být uživatel, skupina, instanční objekt aplikace nebo spravovaná identita pro prostředky Azure.

Obor prostředku

Před přiřazením role Azure RBAC k objektu zabezpečení určete rozsah přístupu, který má mít objekt zabezpečení. Osvědčené postupy určují, že je vždy nejlepší udělit pouze nejužší možný rozsah. Role Azure RBAC definované v širším rozsahu jsou zděděné prostředky pod nimi.

Přístup k prostředkům tabulky Azure můžete nastavit na následujících úrovních, počínaje nejužším oborem:

  • Jednotlivá tabulka. V tomto oboru se přiřazení role vztahuje na zadanou tabulku.
  • Účet úložiště. V tomto oboru se přiřazení role vztahuje na všechny tabulky v účtu.
  • Požadovaná skupina prostředků. V tomto oboru se přiřazení role vztahuje na všechny tabulky ve všech účtech úložiště ve skupině prostředků.
  • Předplatné. V tomto oboru se přiřazení role vztahuje na všechny tabulky ve všech účtech úložiště ve všech skupinách prostředků v předplatném.
  • Skupina pro správu. V tomto oboru se přiřazení role vztahuje na všechny tabulky ve všech účtech úložiště ve všech skupinách prostředků ve všech předplatných ve skupině pro správu.

Další informace o rozsahu přiřazení rolí Azure RBAC najdete v tématu Vysvětlení oboru pro Azure RBAC.

Předdefinované role Azure pro tabulky

Azure RBAC poskytuje předdefinované role pro autorizaci přístupu k tabulkovým datům pomocí Microsoft Entra ID a OAuth. Mezi předdefinované role, které poskytují oprávnění k tabulkám ve službě Azure Storage, patří:

  • Přispěvatel dat tabulky úložiště: Slouží k udělení oprávnění ke čtení, zápisu nebo odstranění prostředkům služby Table Storage.
  • Čtenář dat tabulky úložiště: Slouží k udělení oprávnění jen pro čtení k prostředkům služby Table Storage.

Informace o přiřazení předdefinované role Azure k objektu zabezpečení najdete v tématu Přiřazení role Azure pro přístup k tabulkovým datům. Informace o tom, jak vypsat role Azure RBAC a jejich oprávnění, najdete v tématu Výpis definic rolí Azure.

Další informace o tom, jak jsou definované předdefinované role pro Azure Storage, najdete v tématu Vysvětlení definic rolí. Informace o vytváření vlastních rolí Azure najdete v tématu Vlastní role Azure.

Přístup k datům umožňují přístup k tabulkovým datům pouze role explicitně definované pro objekt zabezpečení. Předdefinované role, jako je vlastník, Přispěvatel a Přispěvatel účtů úložiště, umožňují objekt zabezpečení spravovat účet úložiště, ale neposkytují přístup k datům tabulky v rámci tohoto účtu prostřednictvím ID Microsoft Entra. Pokud ale role zahrnuje Microsoft.Storage/storageAccounts/listKeys/action, může uživatel, kterému je tato role přiřazena, přistupovat k datům v účtu úložiště prostřednictvím autorizace sdíleného klíče pomocí přístupových klíčů účtu.

Podrobné informace o předdefinovaných rolích Azure pro Azure Storage pro datové služby i službu pro správu najdete v části Úložiště v předdefinovaných rolích Azure pro Azure RBAC. Další informace o různých typech rolí, které poskytují oprávnění v Azure, najdete v tématech Role Azure, Role Microsoft Entra a klasické role správce předplatného.

Důležité

Rozšíření přiřazení rolí Azure může trvat až 30 minut.

Přístupová oprávnění pro operace s daty

Podrobnosti o oprávněních potřebných k volání konkrétních operací služby Table Service najdete v tématu Oprávnění pro volání datových operací.

Další kroky