本文档为您介绍使用临时访问令牌STS(Security Token Service,它是RAM的一个扩展授权服务)给临时用户授权的方法。

背景介绍

有时存在一些用户(人或应用程序),并不经常访问您的云资源,只是偶尔需要访问一次,称这些用户为临时用户。您可以通过STS来为这些用户(子账号)颁发访问令牌。颁发令牌时,您可以根据需要来定义令牌的权限和自动过期时间。

使用STS访问令牌,给临时用户授权的好处是让授权更加可控。您不必为临时用户创建一个RAM用户账号及密钥,因为RAM用户密钥都是长期有效的,但临时用户并不需要长期的资源访问。具体使用场景可参见针对移动设备应用的临时授权跨云账号的资源授权

创建角色

  1. 在RAM控制台上,选择RAM角色管理 > 新建RAM角色

  2. 选择角色类型,这里选择 用户RAM角色

  3. 填写云账号类型信息。

  4. 填写角色名称。

  5. 角色创建成功后,给角色授权,详情请参见RAM 授权授权资源类型

临时访问授权

在使用STS来授权访问前,需要先对上面创建角色第三步中的受信云账号的子账号进行扮演角色的授权。若任意子账号都可以扮演这些角色,会带来不可预估的风险,因此有扮演对应角色需求的子账号需要被赋予相应的配置权限。

受信云账号授权

  1. 单击页面左侧的策略管理,进入策略管理页面。
  2. 单击页面右侧的新建授权策略按钮,进入创建授权策略的页面。
  3. 选择空白模板,进入创建自定义授权策略的页面。
  4. 填写授权策略名称,并将如下内容填写至策略内容栏。
    {
    "Version": "1",
    "Statement": [
    {
       "Effect": "Allow",
       "Action": "sts:AssumeRole",
       "Resource": "acs:ram::${aliyunID}:role/${roleName}"
    }
    ]
    }

    ${aliyunID}:表示创建角色的用户ID。

    ${roleName}:表示角色名称的小写。

    说明 Resource具体内容,可以从角色详情,基本信息中ARN栏获取。

  5. 在用户管理页面,对子账号授权刚建立扮演角色的权限,参考 RAM 授权

子账号扮演角色

子账号登录控制台后,可以切换到刚刚被授予扮演的角色,行使角色的权限,步骤如下。

  1. 将鼠标放置于顶部导航栏右上角头像处,在小窗口点击切换身份。
  2. 填写前面要创建角色的账号的企业别名,如果没有修改则默认为账号ID,同时填写角色名称,点击切换即可切换至角色。