Co je řízení přístupu na základě role v Azure (Azure RBAC)?
Správa přístupu ke cloudovým prostředkům je velmi důležitou funkcí pro jakoukoli organizaci, která používá cloud. Řízení přístupu na základě role v Azure (Azure RBAC) pomáhá spravovat, kdo má přístup k prostředkům Azure, co může s těmito prostředky dělat a k jakým oblastem má přístup.
Azure RBAC je autorizační systém postavený na Azure Resource Manager který poskytuje jemně odlanou správu přístupu k prostředkům Azure.
Toto video poskytuje rychlý přehled Azure RBAC.
Co můžu dělat s Azure RBAC?
Tady je několik příkladů, co můžete s Azure RBAC dělat:
- Jednomu uživateli můžete povolit správu virtuálních počítačů v předplatném a jinému uživateli správu virtuálních sítí.
- Skupině DBA můžete povolit správu databází SQL v předplatném.
- Uživateli můžete povolit správu všech prostředků ve skupině prostředků, například virtuálních počítačů, webů a podsítí.
- Aplikaci můžete povolit přístup ke všem prostředkům ve skupině prostředků.
Jak Azure RBAC funguje
Přístup k prostředkům pomocí Azure RBAC můžete řídit přiřazením rolí Azure. Toto je klíčový koncept, který je třeba pochopit – je to způsob, jakým se oprávnění vynucuje. Přiřazení role se skládá ze tří prvků: objekt zabezpečení, definice role a obor.
Objekt zabezpečení
Objekt zabezpečení představuje uživatele, skupinu, instanční objekt nebo spravovanou identitu, která požaduje přístup k prostředkům Azure. K jednomu z těchto objektů zabezpečení můžete přiřadit roli.

Definice role
Definice role je kolekce oprávnění. Obvykle se mu říká role. Definice role obsahuje seznam akcí, které je možné provádět, například čtení, zápis a odstranění. Role mohou být souhrnné, například vlastník, nebo konkrétní, například čtenář virtuálních počítačů.

Azure obsahuje několik předdefinových rolí, které můžete použít. Role Přispěvatel virtuálních počítačů například uživateli umožňuje vytvářet a spravovat virtuální počítače. Pokud předdefinované role nesplňuje konkrétní potřeby vaší organizace, můžete si vytvořit vlastní role Azure.
Toto video poskytuje rychlý přehled předdefinované role a vlastních rolí.
Azure nabízí datové akce, které umožňují udělit přístup k datům v rámci objektu. Pokud má uživatel například přístup ke čtení dat u účtu úložiště, bude moci číst objekty blob nebo zprávy v rámci daného účtu úložiště.
Další informace najdete v tématu Principy definic rolí Azure.
Obor
Obor je sada prostředků, na které se přístup vztahuje. Když přiřadíte roli, můžete definováním oboru dále omezit akce, které jsou povoleny. To je užitečné, pokud chcete, aby někdo byl přispěvatelem webu,ale jenom pro jednu skupinu prostředků.
V Azure můžete zadat obor na čtyřech úrovních:skupina pro správu, předplatné, skupinaprostředků nebo prostředek. Obory jsou strukturovány ve vztahu nadřazený-podřízený obor. Role můžete přiřazovat na kterékoli z těchto úrovní oboru.

Další informace o oboru najdete v tématu Principy oboru.
Přiřazení rolí
Přiřazení role je proces připojení definice role k uživateli, skupině, objektu služby nebo spravované identitě v konkrétním oboru za účelem udělení přístupu. Přístup se uděluje vytvořením přiřazení role a odvolává se odebráním přiřazení role.
Následující diagram znázorňuje příklad přiřazení role. V tomto příkladu byla marketingové skupině přiřazena role Přispěvatel pro skupinu prostředků prodeje farmaceutických výrobků. To znamená, že uživatelé marketingové skupiny mohou vytvářet a spravovat prostředky Azure ve skupině prostředků prodeje farmaceutických výrobků. Uživatelé marketingové skupiny nemají přístup k prostředkům mimo skupinu prostředků prodeje farmaceutických výrobků, pokud nejsou součástí přiřazení jiné role.

Role můžete přiřazovat pomocí Azure Portal, Azure CLI, Azure PowerShell, azure SDK nebo rozhraní REST API.
Další informace najdete v tématu Postup přiřazení role Azure.
Skupiny
Přiřazení rolí jsou tranzitivní pro skupiny, což znamená, že pokud je uživatel členem skupiny a tato skupina je členem jiné skupiny, která má přiřazení role, bude mít uživatel oprávnění v přiřazení role.

Přiřazení více rolí
Co se tedy stane, když máte více překrývajících se přiřazení rolí? Azure RBAC je aditivní model, takže efektivní oprávnění jsou součtem přiřazení rolí. Představte si následující příklad, ve kterém má uživatel udělenou roli Přispěvatel v oboru předplatného a roli Čtenář ve skupině prostředků. Součet oprávnění Přispěvatel a Oprávnění Čtenář je v podstatě rolí přispěvatele pro předplatné. Proto v tomto případě nemá přiřazení role Čtenář žádný vliv.

Přiřazení zamítnutí
Dříve byl Azure RBAC model, který byl jen pro povolení bez odepření, ale teď Azure RBAC podporuje přiřazení zamítnutí omezeným způsobem. Podobně jako přiřazení role připojí přiřazení zamítnutí sadu akcí zamítnutí uživateli, skupině, objektu služby nebo spravované identitě v konkrétním oboru za účelem odepření přístupu. Přiřazení role definuje sadu akcí, které jsou povolené, zatímco přiřazení zamítnutí definuje sadu akcí, které nejsou povoleny. Jinými slovy, přiřazení zamítnutí blokuje uživatelům možnost provádět určité akce i v případě, že přiřazení role jim přístup uděluje. Přiřazení zamítnutí mají přednost před přiřazením rolí.
Další informace najdete v tématu Principy přiřazení zamítnutí Azure.
Jak Azure RBAC určuje, jestli má uživatel přístup k prostředku
Následuje hlavní postup, který Azure RBAC používá k určení, jestli máte přístup k prostředku. Tento postup se týká služeb Azure Resource Manager roviny dat integrovaných s Azure RBAC. Tyto principy je užitečné chápat, pokud se snažíte vyřešit potíže s přístupem.
Uživatel (nebo instanční objekt služby) získá token pro Azure Resource Manager.
Tento token obsahuje členství uživatele ve skupinách (včetně tranzitivního členství ve skupinách).
Uživatel provede s připojeným tokenem volání rozhraní REST API do Azure Resource Manageru.
Azure Resource Manager načte všechna přiřazení rolí a přiřazení zamítnutí vztahující se k prostředku, na kterém se akce provádí.
Pokud ano, přístup se zablokuje. V opačném případě bude hodnocení pokračovat.
Azure Resource Manageru zúží přiřazení rolí, které se vztahují na tohoto uživatele nebo jeho skupinu, a určí, jaké role má uživatel u daného prostředku.
Azure Resource Manager určí, zda je akce ve volání rozhraní API je zahrnuta v rolích, které uživatel pro tento prostředek má. Pokud role zahrnují zástupné znaky ( ), efektivní oprávnění se vypočítají odečtením hodnoty
Actions*od povolené hodnotyNotActionsActions. Podobně se stejné odčítání provádí pro všechny akce dat.Actions - NotActions = Effective management permissionsDataActions - NotDataActions = Effective data permissionsPokud uživatel nemá roli s akcí v požadovaném oboru, přístup není povolený. V opačném případě se vyhodnotí všechny podmínky.
Pokud přiřazení role obsahuje podmínky, vyhodnotí se. V opačném případě je přístup povolený.
Pokud jsou splněné podmínky, je přístup povolen. V opačném případě přístup není povolený.
Následující diagram obsahuje souhrn logiky vyhodnocení.

Licenční požadavky
Používání této funkce je zdarma a je součástí vašeho předplatného Azure.