RAM角色(RAM role)与RAM用户一样,都是RAM身份类型的一种。RAM角色是一种虚拟用户,没有确定的身份认证密钥,需要被一个受信的实体用户扮演才能正常使用。

RAM角色基本概念


RAM角色基本概念
RAM角色(RAM role)
RAM角色是一种虚拟用户,与实体用户(云账号、RAM用户和云服务)和教科书式角色(Textbook role)不同。
  • 实体用户:拥有确定的登录密码或访问密钥。
  • 教科书式角色:教科书式角色或传统意义上的角色是指一组权限集合,类似于RAM里的权限策略。如果一个用户被赋予了这种角色,也就意味着该用户被赋予了一组权限,可以访问被授权的资源。
  • RAM角色:RAM角色有确定的身份,可以被赋予一组权限策略,但没有确定的登录密码或访问密钥。RAM角色需要被一个受信的实体用户扮演,扮演成功后实体用户将获得RAM角色的安全令牌,使用这个安全令牌就能以角色身份访问被授权的资源。
角色ARN(Role ARN)
ARN是角色的全局资源描述符,用来指定具体角色。ARN遵循阿里云ARN的命名规范。例如,某个云账号下的devops角色的ARN为:acs:ram::123456789012****:role/samplerole。创建角色后,单击角色名后,可在基本信息页查看其ARN。
可信实体(Trusted entity)
角色的可信实体是指可以扮演角色的实体用户身份。创建角色时必须指定可信实体,角色只能被受信的实体扮演。可信实体可以是受信的阿里云账号、受信的阿里云服务或身份提供商。
权限策略(Policy)
一个角色可以绑定一组权限策略。没有绑定权限策略的角色也可以存在,但不能访问资源。
扮演角色(Assume role)
扮演角色是实体用户获取角色身份的安全令牌的方法。一个实体用户调用STS API AssumeRole可以获得角色的安全令牌,使用安全令牌可以访问云服务API。
切换身份(Switch role)
切换身份是在控制台中实体用户从当前登录身份切换到角色身份的方法。一个实体用户登录到控制台之后,可以切换到被许可扮演的某一种角色身份,然后以角色身份操作云资源。当用户不需要使用角色身份时,可以从角色身份切换回原来的登录身份。
角色令牌(Role token)
角色令牌是角色身份的一种临时访问密钥。角色身份没有确定的访问密钥,当一个实体用户要使用角色时,必须通过扮演角色来获取对应的角色令牌,然后使用角色令牌来调用阿里云服务API。

RAM角色的使用方法


RAM角色的使用方法
  1. RAM角色指定可信实体,即指定可以扮演角色的实体用户身份。
  2. 可信实体通过控制台或调用API扮演角色并获取角色令牌。
    • 通过控制台扮演角色:切换身份是在控制台中实体用户从当前登录身份切换到RAM角色身份的方法,详情请参见使用RAM角色
    • 通过调用API扮演角色:一个实体用户通过调用AssumeRole可以获得角色令牌,使用角色令牌可以访问云服务API。
    说明 扮演角色是实体用户获取RAM角色令牌的方法,角色令牌是角色身份的一种临时访问凭证,使用角色令牌可以访问阿里云资源。
  3. 为RAM角色绑定权限策略,详情请参见为RAM角色授权
    说明 一个RAM角色可以绑定一组权限策略,没有绑定权限策略的角色也可以存在,但不能访问资源。
  4. 受信实体通过扮演角色,使用角色令牌访问阿里云资源。

RAM角色类型

根据RAM可信实体的不同,RAM支持以下三种类型的角色:

  • 阿里云账号:允许RAM用户所扮演的角色。扮演角色的RAM用户可以属于自己的云账号,也可以属于其他云账号。此类角色主要用来解决跨账号访问和临时授权问题。
  • 阿里云服务:允许云服务所扮演的角色。此类角色主要用于授权云服务代理您进行资源操作。
  • 身份提供商:允许受信身份提供商下的用户所扮演的角色。此类角色主要用于实现与阿里云的SSO。

RAM角色的应用场景