开发者社区> 问答> 正文

访问控制相关术语

本文罗列了 RAM 中用到的主要术语,帮助您正确理解和使用 RAM。

身份管理相关术语
云账户(主账户)
云账户是阿里云资源归属、资源使用计量计费的基本主体。当用户开始使用阿里云服务时,首先需要注册一个云账户。云账户为其名下所拥有的资源付费,并对其名下所有资源拥有完全权限。
默认情况下,资源只能被属主(ResourceOwner)所访问,任何其他用户访问都需要获得属主的显式授权。所以从权限管理的角度来看,云账户就是操作系统的 root 或 Administrator,所以我们有时称它为 [backcolor=transparent]根账户 或 [backcolor=transparent]主账户。
云账户别名(Alias)
每个云账户可以在 RAM 中为自己设置一个全局唯一的别名。别名主要用于 RAM 用户登录以及成功登录后的显示名。
比如,云账号 admin@abc.com 为自己设置一个别名为 abc.com,那么其名下的 RAM 用户 alice 成功登录后,显示名就是 alice@abc.com。

身份凭证(Credential)
身份凭证是用于证明用户真实身份的凭据,它通常是指登录密码或访问密钥(Access Key)。身份凭证是秘密信息,用户必须保护好身份凭证的安全。

  • [backcolor=transparent]登录名/密码(Password)。您可以使用登录名和密码登入阿里云控制台,查看订单、账单或购买资源,并通过控制台进行资源操作。
  • [backcolor=transparent]访问密钥(AccessKey)。您可以使用访问密钥构造一个 API 请求(或者使用云服务 SDK)来操作资源。
  • [backcolor=transparent]多因素认证(MFA)。Multi-Factor Authentication, 是一种简单有效的最佳安全实践方法,它能够在用户名和密码之外再额外增加一层安全保护。启用 MFA 后,用户登录阿里云网站时,系统将要求输入用户名和密码(第一安全要素),然后要求输入来自其MFA设备的可变验证码(第二安全要素)。这些多重要素结合起来将为您的账户提供更高的安全保护。

RAM 用户
RAM 允许在一个云账户下创建多个 RAM 用户(可以对应企业内的员工、系统或应用程序)。RAM 用户不拥有资源,没有独立的计量计费,这些用户由所属云账户统一控制和付费。RAM 用户是归属于云账户,只能在所属云账户的空间下可见,而不是独立的云账户。RAM 用户必须在获得云账户的授权后才能登录控制台或使用 API 操作云账户下的资源。
RAM 用户有两种身份类型:RAM-User 和 RAM-Role。
  • RAM-User 是一种实体身份类型,有确定的身份 ID 和身份凭证,它通常与某个确定的人或应用程序一一对应。
  • RAM-Role 是一种虚拟身份类型,它没有确定的身份凭证,它必须关联到某个实体身份上才能使用。

RAM-Role
RAM 角色。传统意义上的角色(教科书式角色)是指一组权限集合,它类似于 RAM 里的 Policy。如果一个用户被赋予了某种角色,也就意味着该用户被赋予了一组权限,然后该用户就能访问被授权的资源。
RAM 角色不同于教科书式角色。RAM 角色是一种虚拟用户(或影子账号),它是 RAM 用户类型的一种。这种虚拟用户有确定的身份,也可以被赋予一组权限(Policy),但它没有确定的身份认证密钥(登录密码或 AccessKey)。与普通 RAM 用户的差别主要在使用方法上,RAM 角色需要被一个授信的实体用户扮演,扮演成功后实体用户将获得 RAM 角色的临时安全令牌,使用这个临时安全令牌就能以角色身份访问被授权的资源。
RAM-Role 与 Textbook-Role(教科书式角色)的差异如下:
  • (相同点)RAM-Role 和 Textbook-Role 都可以绑定一组权限集。

  • (不同点)RAM-Role 是一种虚拟身份或影子账号,它有独立的身份 ID,除了绑定权限之外,还需要指定演员列表(Roleplayers),它主要用于解决与身份联盟(Identity Federation)相关的问题。Textbook-Role 通常只表示一组权限的集合,它不是身份,主要用于简化授权管理。
    [backcolor=transparent]RAM-Role 的扮演与切换:

  • 从登录身份切换到角色身份(SwitchRole):一个实体用户(比如 RAM-User)登录到控制台后,可以选择 [backcolor=transparent]切换到某个角色,前提是这个实体用户已经被关联了角色。每次只能切换进入某一种角色。当用户从 [backcolor=transparent]登录身份 进入 [backcolor=transparent]角色身份 时,用户只能使用角色身份上所绑定的权限,而登录身份上绑定的权限会被屏蔽。如果需要使用登录身份的权限,那么需要从角色身份切换回到登录身份。

  • 从实体身份通过程序调用方式扮演角色(AssumeRole):如果一个实体用户(比如 RAM-User)关联了某个 RAM-Role,那么该用户可以使用访问密钥(AccessKey)来调用 STS 服务的 AssumeRole 接口来获得这个 RAM-Role 的一个临时访问密钥。临时访问密钥有过期时间和受限制的访问权限(不会超过该角色所绑定的权限集),通常用于解决临时授权问题。

访问控制相关术语
资源(Resource)
资源是云服务呈现给用户与之交互的对象实体的一种抽象,如 OSS 存储桶或对象,ECS 实例等。
我们为每个资源定义了一个全局的阿里云资源名称(Aliyun Resource Name, ARN)。格式如下:
  1. [backcolor=transparent]acs[backcolor=transparent]:<[backcolor=transparent]service[backcolor=transparent]-[backcolor=transparent]name[backcolor=transparent]>:<[backcolor=transparent]region[backcolor=transparent]>:<[backcolor=transparent]account[backcolor=transparent]-[backcolor=transparent]id[backcolor=transparent]>:<[backcolor=transparent]resource[backcolor=transparent]-[backcolor=transparent]relative[backcolor=transparent]-[backcolor=transparent]id[backcolor=transparent]>

[backcolor=transparent]格式说明:
  • acs: Alibaba Cloud Service 的首字母缩写,表示阿里云的公有云平台。
  • service-name: 阿里云提供的 Open Service 的名字,如 ecs, oss, odps 等。
  • region: 地区信息。如果不支持该项,可以使用通配符“*”号来代替。
  • account-id: 账号 ID,比如 1234567890123456。
  • resource-relative-id: 与 service 相关的资源描述部分,其语义由具体 service 指定。以 OSS 为例,acs:oss::1234567890123456:sample_bucket/file1.txt 表示公有云平台 OSS 资源,OSS 对象名称是sample_bucket/file1.txt,对象的 Owner 是 1234567890123456。

权限(Permission)

权限分为:允许(Allow)或拒绝(Deny)一个用户对某种资源执行某种操作。
操作可以分为两大类:[backcolor=transparent]资源管控操作 和 [backcolor=transparent]资源使用操作。
  • 资源管控操作是指云资源的生命周期管理及运维管理操作,比如 ECS 的实例创建、停止、重启等,OSS 的 Bucket 创建、修改、删除等;所面向的用户一般是资源购买者或您组织内的运维员工。
  • 资源使用操作是指使用资源的核心功能,比如 ECS 实例操作系统中的用户操作,OSS Bucket 的数据上传/下载;所面向的用户一般是您组织内的研发员工或应用系统。

    [backcolor=transparent]注意:对于弹性计算和数据库产品,资源管控操作可以通过 RAM 来管理,而资源使用操作是在每个产品的实例内进行管理,比如 ECS 实例操作系统的权限控制,MySQL 数据库提供的权限控制。单对于存储类产品,如 OSS, Table Store 等,资源管控操作和资源使用操作都可以通过 RAM 来管理。

授权策略(Policy)
授权策略是描述权限集的一种简单语言规范。RAM 支持的语言规范请参见 授权策略语言。 RAM 支持两种类型的授权策略:云平台管理的 [backcolor=transparent]系统访问策略 和客户管理的 [backcolor=transparent]自定义访问策略。
  • 对于阿里云管理的系统访问策略,用户只能使用,不能修改,阿里云会自动完成系统访问策略的版本更新。
  • 对于客户管理的自定义访问策略,用户可以自主创建和删除,策略版本由客户自己维护。

展开
收起
反向一觉 2017-10-31 14:20:41 2161 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
《用管控策略设定多账号组织全局访问边界》 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载