在Azure的基于角色的访问控制(RBAC)中,角色和作用域之间有什么区别?

ewm0tg9j  于 2023-03-31  发布在  其他
关注(0)|答案(1)|浏览(157)

我正在阅读官方文档中的What is Azure role-based access control (Azure RBAC)?文章,但很难辨别作用域和角色有何不同。
阅读以下帖子,但没有发现它们有帮助,因为:

看起来这个问题并不是我真正想问的,而且答案似乎与我读到的不一致。(然后,这可能只是我阅读理解能力差。)无论如何,这个帖子是从2015年开始的,最后一次更新是在2016年1月。

不扩展RBAC,只扩展AAC。

只有链接到官方文档或不涉及这个问题。

甚至没有试图解释角色与作用域。

z9smfwbn

z9smfwbn1#

Azure's RBAC是一种授权方案

  • (卫生组织) 允许“* 一个实体 ”(或“ 身份 *”)(在官方术语中,安全主体
  • (How) 访问 (即,执行操作)(在官方术语中,角色
  • (WHAT)on a“set of resources”(关于“* 一组资源 *”) (官方术语为范围)。

1. RBAC构建模块

1.1安全主体1(WHO)

“* 请求访问Azure资源的实体 *”在形式上称为安全主体,它可以是

*一月一日

在Azure Active Directory中拥有配置文件的个人。您还可以将角色分配给其他租户中的用户。有关其他组织中的用户的信息,请参阅Azure Active Directory B2B

*一米一米一

在Azure Active Directory中创建的一组用户。将角色分配给组时,该组中的所有用户都具有该角色。

*一米二米一x

应用程序或服务用于访问特定Azure资源的安全标识。您可以将其视为应用程序的用户标识(用户名和密码或证书)。
另请参阅:使用Azure CLI创建Azure服务主体

*一米三米一x

Azure Active Directory中由Azure自动管理的标识(更具体地说,是一种特殊类型的服务主体)。在开发云应用程序时,通常使用managed identities来管理用于向Azure服务进行身份验证的凭据。
(定义取自官方文档中的Steps to assign an Azure role文章。
补充阅读:

1.2作用域(WHAT)

官方定义是“* 作用域是访问所应用的资源集 *"。
我喜欢这个简化的视图,因为最终,一个scope确实解析为一组资源,但更确切地说,它是指分层树结构中的一个实体,每个实体都对Azure资源具有权限:

  • 作用域=/= Azure实体
  • scope ===分配给Azure实体的资源

Understand scope for Azure RBAC是Azure文档中最简单的文章之一,其中有很好的示例。

1.3角色(How)1

例如,***如何***允许安全主体访问资源(即范围)。2
文档对这一点非常简单:

*角色定义*是权限的集合,通常简称为角色,角色定义列出了可以执行的操作,如读、写、删除等。

2.角色分配-综合考虑1

角色分配*是将角色定义附加到特定作用域中的用户、组、服务主体或托管标识以授予访问权限的过程。

也就是说,它是将角色定义应用于具有给定范围的安全主体。(我将角色分配称为“RBAC访问规则”,因为它使所有这些更容易记住和联系。)

脚注

[1]:角色定义的区别因为文档中的措辞,我不太清楚角色分配。例如,在Azure built-in roles中,Contributor被描述为赠款“* 管理所有资源的完全访问权限 *”的角色,在我的理解中,这将使其不仅仅是角色定义(即角色定义+作用域),但它的JSON表示清楚地表明:所有这些都是纯粹的角色,唯一提到的作用域与在角色分配期间可以分配给它们的作用域的限制有关(参见AssignableScopes)。
[2]:是的,这一个是有点强迫……

相关问题