相关术语

本文列举了访问控制(SAM)产品中用到的主要术语,帮助你正确理解和使用 SAM。

身份管理相关术语

主账号

主账号是网易云资源归属、资源使用计量计费的基本主体。当用户开始使用网易云服务时,首先需要注册一个主账号。主账号为其名下所拥有的资源付费,并对其名下所有资源拥有完全权限。

默认情况下,资源只能被主账号访问,任何其他用户访问都需要获得主账号的显式授权。

子账号

SAM 允许您在一个主账号下创建多个子账号(可以对应企业内的员工、系统或应用程序)。子账号不拥有资源,没有独立的计量计费,这些子账号由所属主账号统一控制和付费。子账号是归属于主账号,只能在所属主账号的空间下可见,而不是独立账号。子账号必须在获得主账号的授权后才能登录控制台或使用API操作主账号下的资源。

身份凭证

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

  • 登录名/密码(Password)。您可以使用登录名和密码登入网易云控制台,查看订单、账单或购买资源,并通过控制台进行资源操作。
  • 访问密钥(AccessKey)。您可以使用访问密钥构造一个API请求(或者使用云服务SDK)来操作资源。

SAM 角色

传统意义上的角色(教科书式角色)是指一组权限集合,类似于SAM里的授权策略。如果一个用户被赋予了某种角色,也就意味着该用户被赋予了一组权限,然后该用户就能访问被授权的资源。

SAM角色不同于教科书式角色。SAM角色是一种虚拟账号,有确定的身份,也可以被赋予一组策略,但它没有确定的身份认证密钥(登录密码或AccessKey)。SAM 角色需要被一个授信子账号扮演,扮演成功后子账号将获得 SAM 角色的临时安全令牌,使用这个临时安全令牌就能以角色身份访问被授权的资源。

SAM角色与教科书式角色的差异如下:

  • 相同点:SAM 角色与教科书式角色都可以绑定一组策略。
  • 不同点:SAM 角色是一种虚拟身份,它有独立的身份ID,除了绑定策略之外,还需要指定演员列表,它主要用于解决与身份联盟(Identity Federation)相关的问题。教科书式角色通常只表示一组策略的集合,它不是身份,主要用于简化授权管理。

SAM角色的扮演与切换

从登录身份切换到角色身份:一个子账号登录到控制台后,可以选择切换到某个角色,前提是这个子账号已经被关联了角色。每次只能切换进入某一种角色。当用户从登录身份进入角色身份时,用户只能使用角色身份上所绑定的策略,而登录身份上绑定的策略会被屏蔽。如果需要使用登录身份的权限,那么需要从角色身份切换回到登录身份。

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

访问控制相关术语

资源(Resource)

资源是云服务呈现给用户与之交互的对象实体的一种抽象,如NOS存储桶或对象等。

我们为每个资源定义了一个全局的网易云资源名称(Netease Resource Name, ARN)。格式如下:

product:service-name:region:account-id:resource-descriptor

格式说明:

  • product: 产品名称,网易云基础服务统一使用comb。
  • service-name: 产品下面的服务名称,例如网易云包含nlb、nos、rds等服务。
  • region: 地区信息。如果不支持该项,可以使用通配符“*”号来代替。
  • account-id: 主账号ID,比如netease163。
  • resource-descriptor: 与service相关的资源描述部分,其语义由具体service指定。以NOS为例,comb:nos:*:netease163:samplebucket/michael-j.png表示公有云平台NOS资源,NOS对象名称是samplebucket/michael-j.png,对象的拥有者是netease163。

权限(Permission)

权限的含义是 允许(Allow)或拒绝(Deny)某个用户对某种资源执行某种操作

操作可以分为两大类: 资源管控操作资源使用操作

  • 资源管控操作是指云资源的生命周期管理及运维管理操作,比如RDS实例的创建、停止、重启等,NOS Bucket的创建、修改、删除等;所面向的用户一般是资源购买者或您组织内的运维员工。
  • 资源使用操作是指使用资源的核心功能,比如RDS实例中的用户操作,NOS Bucket的数据上传/下载;所面向的用户一般是您组织内的研发员工或应用系统。

授权策略(Policy)

授权策略是描述权限集的一种简单语言规范。SAM 支持的语言规范请参见授权策略语言。SAM支持两种类型的授权策略:系统策略用户自定义策略

  • 对于网易云管理的系统策略,用户只能使用,不能修改,网易云会自动完成系统策略的版本更新。
  • 对于客户管理的自定义访问策略,用户可以自主创建和删除,策略版本由客户自己维护。