Azure Administrator认证学习指南之Azure RBAC介绍-12
在Azure Administrator认证学习指南之了解 Azure 中的不同角色-04 一文中给大大家介绍过在Microsoft Azure存在不同的角色,以及每个角色的关系,工作机制。今天我们详细介绍Azure RBAC。
作为管理员,首先需要对Azure进行一致性或者企业合规性管理,因此管理 Azure 中的资源访问权限是组织安全性和合规性要求的关键部分。基于角色的访问控制(RBAC)是您授予对 Azure AD 用户,组和服务的适当访问权限的功能。通过选择角色(允许和/或拒绝哪些操作的定义),然后将角色与用户,组或服务主体相关联来配置 RBAC。最后,角色和用户/组/服务主体的这种组合的范围被限定为整个订阅,或资源组,或资源组中的特定资源。
基于角色的访问控制(RBAC)主要作用:
- 允许一个用户管理订阅中的虚拟机,并允许另一个用户管理虚拟网络
- 允许 DBA 组管理订阅中的 SQL 数据库
- 允许某个用户管理资源组中的所有资源,例如虚拟机、网站和子网
- 允许某个应用程序访问资源组中的所有资源
在Azure中,对资源的控制访问是通过创建对应的角色进行分配的。在Azure中,其角色分配存在三个重要概念:安全主体、角色订阅和范围
安全主体:安全主体是一个对象,表示请求访问 Azure 资源的用户、组、服务主体或托管标识。
- 用户 – 在 Azure Active Directory 中具有配置文件的人员。 也可以将角色分配到其他租户中的用户。
- 组 – 在 Azure Active Directory 中创建的一组用户。 将某个角色分配到某个组时,该组中的所有用户都拥有该角色。
- 服务主体 – 应用程序或服务用来访问特定 Azure 资源的安全标识。 可将服务主体视为应用程序的用户标识(用户名和密码或证书)。
- 托管标识 – Azure Active Directory 中由 Azure 自动托管的标识。 在开发云应用程序时,通常使用托管标识来管理用于向 Azure 服务进行身份验证的凭据。
角色定义:角色定义是权限的集合。 它有时简称为”角色″ 。 角色定义列出可以执行的操作,例如读取、写入和删除。 角色可以是高级别的(例如所有者),也可以是特定的(例如虚拟机读取者)。
Azure 包含多个可用的内置角色。 下面列出了四个基本的内置角色。 前三个角色适用于所有资源类型。
- 所有者 – 拥有对所有资源的完全访问权限,包括将访问权限委派给其他用户的权限。
- 参与者 – 可以创建和管理所有类型的 Azure 资源,但无法将访问权限授予其他用户。
- 读取者 – 可以查看现有的 Azure 资源。
- 用户访问管理员 – 允许你管理用户对 Azure 资源的访问。
剩余的内置角色允许管理特定的 Azure 资源。 例如,虚拟机参与者角色允许用户创建和管理虚拟机。 如果内置角色不能满足组织的特定需求,则可以为 Azure 资源创建你自己的自定义角色。
Azure 具有数据操作,通过这些操作可以授予对对象内数据的访问权限。 例如,如果某个用户对某个存储帐户拥有读取数据的访问权限,则该用户可以读取该存储帐户中的 Blob 或消息。
范围:范围是访问权限适用于的资源集。 分配角色时,可以通过定义范围来进一步限制允许的操作。 如果你想要将某人分配为网站参与者,但只针对一个资源组执行此分配,则使用范围就很有帮助。
在Azure中,可在多个级别指定范围:管理组、订阅、资源组或资源。 范围采用父子关系结构。
在父范围授予访问权限时,这些权限会继承到子范围。 例如:
- 如果将所有者角色分配给管理组范围的用户,则该用户可以在管理组中管理所有订阅中的一切内容。
- 如果在订阅范围向某个组分配了读取者角色,则该组的成员可以查看订阅中的每个资源组和资源。
- 如果在资源组范围向某个应用程序分配了参与者角色,则该应用程序可以管理该资源组中所有类型的资源,但不能管理订阅中的其他资源组资源。
角色分配:角色分配是出于授予访问权限的目的,将角色定义附加到特定范围内的用户、组、服务主体或托管标识的过程。 通过创建角色分配来授予访问权限,通过删除角色分配来撤销访问权限。
下图显示了角色分配的示例。 在此示例中,为”营销”组分配了医药销售资源组的参与者角色。 这意味着,”营销”组中的用户可以在医药销售资源组中创建或管理任何 Azure 资源。 “营销”用户无权访问医药销售资源组外部的资源,除非他们属于另一个角色分配。
多角色分配:如果有多个重叠的角色分配,将会发生什么情况? RBAC 是一个加法模型,因此,生效的权限是角色分配相加。 请考虑以下示例,其中在订阅范围内向用户授予了”参与者”角色,并且授予了对资源组的”读者”角色。 “参与者”权限与”读者”权限相加实际上是资源组的”参与者”角色。 因此,在这种情况下,”读者”角色分配没有任何影响。
拒绝分配:以前,RBAC 是一种仅允许模型,没有拒绝功能,但 RBAC 现在以有限方式支持拒绝分配。 拒绝分配类似于角色分配,可将一组拒绝操作附加到特定范围内的用户、组、服务主体或托管标识,以便拒绝访问。 角色分配定义了一组允许 的操作,而拒绝分配定义了一组不允许 的操作。 换而言之,即使角色分配授予用户访问权限,拒绝分配也会阻止用户执行指定的操作。 拒绝分配优先于角色分配。
下文将为大家详细介绍如何在Azure平台中实施Azure RBAC。
本文固定链接: http://365vcloud.net/2019/09/07/azure-rbac-overview/ | 365vCloud的云计算之旅
【下一篇】Azure Administrator认证学习指南之在Azure中实现基于角色的访问控制(RBAC)-13