借助RAM用户实现分权

借助访问控制RAMRAM用户,您可以实现权限分割的目的,按需为RAM用户赋予不同权限,并避免因暴露阿里云账号密钥造成的安全风险。

背景信息

出于安全考虑,您可以为阿里云账号创建RAM用户,并根据需要为这些RAM用户赋予不同的权限,这样就能在不暴露阿里云账号密钥的情况下,实现让RAM用户各司其职的目的。在本文中,假设企业A希望让部分员工处理日常运维工作,则企业A可以创建RAM用户,并为RAM用户赋予相应权限,此后员工即可使用这些RAM用户登录控制台或调用API。

ARMS提供的系统权限策略包括完整权限和只读权限,您可以根据需求选择为RAM用户添加对应的权限:

  • AliyunARMSFullAccess:ARMS的完整权限,添加该权限后,RAM用户拥有对各子产品实例的查看、编辑、删除等所有操作权限。

    说明

    添加AliyunARMSFullAccess权限后无需再添加AliyunARMSReadOnlyAccess权限。

  • AliyunARMSReadOnlyAccess:ARMS的只读权限,添加该权限后,RAM用户只支持查看各子产品的实例信息,不支持修改、删除等操作。

    重要

    为了实现对ARMS所有功能的只读权限,除了添加AliyunARMSReadOnlyAccess权限策略外,还需要再为特定的资源组配置ReadTraceApp权限,否则ARMS将无法展示资源组鉴权下的应用列表。

前提条件

步骤一:创建RAM用户

操作步骤

  1. 使用阿里云账号(主账号)或RAM管理员登录RAM控制台

  2. 在左侧导航栏,选择身份管理 > 用户

  3. 用户页面,单击创建用户

  4. 创建用户页面的用户账号信息区域,设置用户基本信息。

    • 登录名称:可包含英文字母、数字、半角句号(.)、短划线(-)和下划线(_),最多64个字符。

    • 显示名称:最多包含128个字符或汉字。

    • 标签:单击edit,然后输入标签键和标签值。为RAM用户绑定标签,便于后续基于标签的用户管理。

    说明

    单击添加用户,可以批量创建多个RAM用户。

  5. 访问方式区域,选择访问方式,然后设置对应参数。

    为了账号安全,建议您只选择以下访问方式中的一种,将人员用户和应用程序用户分离,避免混用。

    • 控制台访问

      如果RAM用户代表人员,建议启用控制台访问,使用用户名和登录密码访问阿里云。您需要设置以下参数:

      • 控制台登录密码:选择自动生成密码或者自定义密码。自定义登录密码时,密码必须满足密码复杂度规则。更多信息,请参见设置RAM用户密码强度

      • 密码重置策略:选择RAM用户在下次登录时是否需要重置密码。

      • 多因素认证(MFA)策略:选择是否为当前RAM用户启用MFA。启用MFA后,主账号还需要为RAM用户绑定MFA设备或RAM用户自行绑定MFA设备。更多信息,请参见RAM用户绑定MFA设备

    • OpenAPI调用访问

      如果RAM用户代表应用程序,建议启用OpenAPI调用访问,使用访问密钥(AccessKey)访问阿里云。启用后,系统会自动为RAM用户生成一个AccessKey IDAccessKey Secret。更多信息,请参见创建AccessKey

      重要

      RAM用户的AccessKey Secret只在创建时显示,不支持查看,请妥善保管。

  6. 单击确定

  7. 根据界面提示,完成安全验证。

步骤二:为RAM用户添加权限

  1. 使用RAM管理员登录RAM控制台

  2. 在左侧导航栏,选择身份管理 > 用户

  3. 用户页面,单击目标RAM用户操作列的添加权限

    image

    您也可以选中多个RAM用户,单击用户列表下方的添加权限,为RAM用户批量授权。

  4. 新增授权面板,为RAM用户添加权限。

    1. 选择资源范围。

    2. 选择授权主体。

      授权主体即需要添加权限的RAM用户。系统会自动选择当前的RAM用户。

    3. 选择权限策略。

      权限策略是一组访问权限的集合,分为以下两种。支持批量选中多条权限策略。

      • 系统策略:由阿里云创建,策略的版本更新由阿里云维护,用户只能使用不能修改。更多信息,请参见支持RAM的云服务

        说明

        系统会自动标识出高风险系统策略(例如:AdministratorAccess、AliyunRAMFullAccess等),授权时,尽量避免授予不必要的高风险权限策略。

      • 自定义策略:由用户管理,策略的版本更新由用户维护。用户可以自主创建、更新和删除自定义策略。更多信息,请参见创建自定义权限策略

    4. 单击确认新增授权

  5. 单击关闭

后续步骤

使用阿里云账号创建好RAM用户后,即可将RAM用户的登录名称及密码或者AccessKey信息分发给其他用户。其他用户可以按照以下步骤使用RAM用户登录控制台或调用API。

登录控制台

  1. RAM用户登录阿里云控制台

  2. RAM用户名密码登录页签,输入RAM用户名,单击下一步

    • 方式一:使用默认域名登录。RAM用户的登录格式为<UserName>@<AccountAlias>.onaliyun.com,例如:username@company-alias.onaliyun.com。

      说明

      <UserName>RAM用户名称,<AccountAlias>.onaliyun.com为默认域名。关于默认域名的更多信息,请参见基本概念查看和修改默认域名

    • 方式二:使用账号别名登录。RAM用户的登录格式为<UserName>@<AccountAlias>,例如:username@company-alias。

      说明

      <UserName>RAM用户名称,<AccountAlias>为账号别名。关于账号别名的更多信息,请参见基本概念查看和修改默认域名

    • 方式三:如果创建了域别名,也可以使用域别名登录。RAM用户的登录格式为<UserName>@<DomainAlias>,例如:username@example.com。

      说明

      <UserName>RAM用户名称,<DomainAlias>为域别名。关于域别名的更多信息,请参见基本概念创建并验证域别名

  3. 输入RAM用户的登录密码,然后单击登录

  4. (可选)如果您开启了多因素认证(MFA),则需要输入虚拟MFA设备生成的验证码,或通过U2F安全密钥认证。

使用RAM用户的AccessKey调用API

在代码中使用RAM用户的AccessKeyIdAccessKeySecret即可。