IAM

Products

IAM

核心概念

本文罗列了IAM中用到的相关术语,帮助您正确理解和使用IAM。

身份管理相关术语

主账号

主账号也叫根账号,是京东云资源归属、计费的主体。在用户注册、激活京东云时由系统创建。主账户为其名下所有的资源付费,并拥有所有京东云服务和资源的全部权限。

子用户

子用户是一种实体身份,有确定的用户名,密码和AK/SK,它通常与某个确定的实体一一对应。 子用户的用户名由主账号创建。子用户不是独立的京东云账号,它归属于主账号,只能在主账号的空间下可见,他只有资源的使用权,没有资源的所有权。没有独立的计量计费,子用户的对资源的使用费用将统一计到主账号的账单中。子用户必须得到主账号的授权,才能登录控制台或使用Open API操作主账号授权的资源。

主账号与IAM子用户

从权限关系:

  • 主账号拥有京东云上所有资源的所有权限,是我们理解上的管理员账号,或者Root账号。而子用户只拥有主账号授予的特定权限,并且主账号可以随时收回授予子用户的权限。
  • 主账号可以在自己的账户中设置子用户,一个主账号可以有多个子用户,但是每个子用户只归属于一个主账号。

从资源归属:

  • 主账号拥有京东云所有资源的所有权,是京东云资源使用计费主体。而子用户只拥有主账号授予的特定资源的特定操作权限,对资源只有使用权限,没有所有权。即使子用户被授予了资源创建的权限,资源创建后的所有权归属于主账号,被授权后对资源操作产生的费用计入主账号的账单。

群组

即子用户组,是一组子用户的集合。利用群组,主账号可以更方便地管理多个权限相同的子用户,也可以通过将子用户加入或移出群组,来变更用户的权限。

角色

角色分为用户角色和服务角色,他是一种虚拟身份类型,它没有确定的身份凭证,它必须关联到某个实体身份上才能使用。与子用户的差别主要在使用方法上,角色需要被一个授信的实体用户扮演,扮演成功后实体用户将获得角色的临时安全凭证,使用这个临时安全令牌就能以角色身份访问被授权的资源。

  • 用户角色必须被当前主账号下的子用户扮演,或者跨账号下的子用户扮演后才能生效。
  • 服务角色需要授予某个云服务(如云主机,数据库)来扮演,服务角色将代替用户对您的京东云资源进行管理和操作。

信任关系,也叫角色扮演者(Principal)

京东云中可以扮演角色的实体用户或者服务。

角色扮演和切换

  • 从登录身份切换到用户角色身份(SwitchRole):子用户登录到控制台后,可以选择切换角色,前提是这个子用户已经被授予了扮演该用户角色的权限。子用户每次只能扮演一个用户角色,当子用户从登录身份进入用户角色身份时,用户只能使用用户角色身份上所授予的权限,子用户登录身份上绑定的权限会被屏蔽。如果需要使用登录身份的权限,那么需要从角色身份返回登录身份。
  • 从实体身份通过程序调用方式扮演角色(AssumeRole):如果一个子用户被授予了扮演某个用户角色的权限,那么该子用户可以使用访问密钥(AccessKey)来调用 STS 服务的 AssumeRole 接口来获得这个用户角色的临时访问密钥。子用户可以自行设置临时凭证的过期时间,临时凭证访问时的权限也将受限于用户角色被授予的访问权限,通常用于解决临时授权问题和跨账号访问的授权问题。

安全凭证

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

  • 登录名/密码(Password):您可以使用登录名和密码登录京东云控制台访问相关资源和服务。
  • 访问密钥(AccessKey):您可以使用访问密钥访问Open API来管理和操作京东云资源。
  • 虚拟MFA认证:Multi-Factor Authentication,是一种简单有效的最佳安全实践,它能够在用户名和密码之外再增加一层安全保护。这些多重要素结合起来将为您的账户提供更高的安全保护。启用 MFA 后,用户登录京东云时,系统将要求输入两层安全要素:
    • 第一安全要素:用户名和密码。
    • 第二安全要素:来自您虚拟 MFA 设备的动态验证码。
  • 操作保护:您可以单独为子账号开启操作保护,一旦开启操作保护,用户在操作主账号授予的敏感操作时,将需要进行虚拟MFA认证。

策略相关术语

主账号拥有其名下所有资源的全部操作权限。如果主账号未对子用户和角色进行授权,子用户和角色默认没有任何资源的访问权限。

策略(Policy)

授权策略是定义一条或多条权限的 JSON 文档,撰写策略需要遵循 JSON 语法规范。通过给子用户,群组,角色授予策略,来控制子用户,群组和角色对京东云资源的访问权限。 IAM 支持两种类型的策略:京东云预置的系统策略和用户自行管理的自定义策略。

  • 京东云预置的系统策略是产品线接入的时京东云预置好的,不允许用户修改。
  • 用户自行管理的自定义策略,用户可以通过自定义策略的方式创建允许或拒绝(Effect)对特定资源(resource)的特定操作(action)的策略,您也可以增加限定条件(condition)来限定源IP,特定访问时间和虚拟MFA认证等,用户可自主编辑,删除自定义策略。

权限(Effect)

权限指用户对资源进行访问或操作的许可,权限分为:允许(Allow)或拒绝(Deny)。

当策略中既有允许(Allow)的授权,又有拒绝(Deny)的授权时,遵循Deny优先的原则,操作会被拒绝。

操作(Action)

为实现京东云控制台和SDK访问的统一,我们将控制台上的每一个操作都具体细化到Open API级别,操作可以分为两大类:

  • 不能指定资源的操作:如IAM子用户列表(iam:descirbeSubusers),群组列表(iam:describeGroups),子用户创建(iam:createSubuser)等接口,这些接口在定义上就不允许指定资源进行操作,当您在IAM中创建自定义策略的时候,这些接口不支持对指定资源进行操作。一般列表接口,创建接口,报表接口都不支持对指定资源进行操作授权。
  • 可以指定资源的操作:如IAM子用户详情(iam:describeSubuser),IAM子用户编辑(iam:modifySubuser)等接口,这些接口在定义上支持对指定资源进行操作,当您在IAM中创建自定义策略时,这些接口允许对指定资源进行授权和操作。一般详情,编辑,删除,解绑,绑定等接口都支持对指定资源进行操作授权。

资源(Resource)

JDCloud资源名称(JDCloud Resource Name,JRN)是用来唯一标识一个JDCloud资源的,我们可以用JRN在JDCLOUD的全局环境中来明确指定一个资源。

条件(Condition)

指定策略生效的条件

Update Time:2019-09-05 21:53:59