通过RAM限制用户的访问时间段

更新时间:
复制 MD 格式

RAM可以限制用户只能在指定的时间段访问企业的云资源,从而增强访问安全性。

应用场景

企业A购买了很多阿里云资源来开展业务,例如:ECS实例、RDS实例、SLB实例和OSS存储空间等。为了确保其业务和数据安全,企业希望用户只能在工作时间访问阿里云,而不是在任意时间都可以访问阿里云。

您可以根据需要创建自定义权限策略,然后创建RAM用户并为RAM用户授予对应的权限,从而保证RAM用户只能在指定的时间段访问指定阿里云资源。

步骤一:创建自定义权限策略

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

  2. 在左侧导航栏,选择权限管理 > 权限策略

  3. 权限策略页面,单击创建权限策略

  4. 创建权限策略页面,单击脚本编辑页签。

    页面显示 JSON 编辑器,默认策略模板包含 Version(值为 "1")和 Statement 数组,其中每条语句包括 Effect(默认 "Allow")、Action(待填写)、Resource(待填写)和 Condition 字段。请根据实际需求在 ActionResource 中填入对应的操作和资源。

  5. 输入权限策略内容。

    策略内容示例:RAM用户只能在特定时间段(北京时间201981217:00之前)访问ECS。您可以通过设置Conditionacs:CurrentTime的值为2019-08-12T17:00:00+08:00来实现。

    {
      "Statement": [
        {
          "Action": "ecs:*",
          "Effect": "Allow",
          "Resource": "*",
          "Condition": {
              "DateLessThan": {
                  "acs:CurrentTime": "2019-08-12T17:00:00+08:00"
              }
          }
        }
      ],
      "Version": "1"
    }
    说明

    Condition(限制条件)只针对当前权限策略描述的操作有效。您可以修改时间2019-08-12T17:00:00+08:00为企业允许访问的时间。

  6. 单击页面上方的可选:高级策略优化,然后单击执行,对权限策略内容进行高级优化。

    高级权限策略优化功能会完成以下任务:

    • 拆分不兼容操作的资源或条件。

    • 收缩资源到更小范围。

    • 去重或合并语句。

  7. 创建权限策略页面,单击确定

  8. 创建权限策略对话框,输入策略名称备注,然后单击确定

步骤二:创建RAM用户

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

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

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

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

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

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

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

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

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

    • 控制台访问

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

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

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

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

    • 使用永久AccessKey访问

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

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

      • 访问密钥(AccessKey)是一种长期有效的程序访问凭证。AccessKey泄露会威胁该账号下所有资源的安全。建议优先采用STS Token临时凭证方案,降低凭证泄露的风险。更多信息,请参见使用访问凭据访问阿里云OpenAPI最佳实践

  6. 单击确定

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

步骤三:为RAM用户授权

步骤一创建的自定义权限策略授予步骤二创建的RAM用户。

控制台

RAM控制台提供两种为RAM用户授权的操作入口。两者均支持单个或批量授权,请按操作习惯选择:

  • 用户页面发起:在用户列表中勾选目标用户后,授权面板会自动选定授权主体。适合“以用户为中心”的视角。

  • 授权页面发起:需手动选择授权主体,但可看到账号下所有授权记录的总览。适合“以权限为中心”的视角。

说明

大规模批量管理建议:当需要为多名职责相同的 RAM 用户授予相同权限时,建议先将这些用户加入同一用户组,再为用户组授权(控制台路径:身份管理 > 用户组),比为每个用户单独授权更易维护。

从用户页面发起

  1. 登录RAM控制台

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

  3. 用户页面,找到已经创建好的RAM用户,单击操作列的新增授权

    您也可以选中多个RAM用户,单击用户列表下方的新增授权,为多个RAM用户新增授权。

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

    • 选择资源范围

      • 账号级别:权限在当前阿里云账号内全部资源生效。适用于通用、无需按资源组隔离的场景。

      • 资源组级别:权限仅在指定资源组内生效。适用于多团队共用一个账号、需按资源组隔离权限的场景。如果RAM用户被授予了资源组级别的权限,该用户登录控制台后,必须在顶部导航栏将资源范围切换到被授权的资源组,才能正常访问和管理该资源组内的资源。

        说明
        1. 系统会自动标识出高风险系统策略(例如:AdministratorAccess、AliyunRAMFullAccess等),这些策略通常包含对所有云资源的完全控制权限或对访问控制(RAM)的完全管理权限等,请谨慎授予

        2. 资源组授权示例,请参见使用资源组限制RAM用户管理指定的ECS实例

    • 选择授权主体

      授权主体即需要添加权限的RAM用户。如果是从用户页面发起,系统会自动选择当前的RAM用户。如果是从授权页面发起,需要手动选择RAM用户,支持批量选中多个。

    • 选择权限策略

      • 系统策略:可以直接搜索并选择。搜索技巧:您可以利用搜索框快速定位策略。支持按产品名称(如ECSOSS)、权限级别(如ReadOnlyFullAccess)或完整的策略名称进行模糊搜索。

      • 自定义策略:需要先创建自定义权限策略后再来授权。

    • (可选)填写备注:建议填写授权原因或场景描述,便于后续审计回溯,例如"OSS 上传任务专项授权"。

    • 提交授权:单击确认新增授权

  5. 确认授权绑定操作结果,单击关闭

从授权页面发起

  1. 登录RAM控制台

  2. 在左侧导航栏,选择权限管理 > 授权

  3. 授权页面,单击新增授权

  4. 新增授权面板,为RAM用户添加权限。具体内容同上。

  5. 确认授权绑定操作结果,单击关闭

OpenAPI

授予自定义策略

  1. 调用CreatePolicy创建一个自定义策略,可以参考权限策略基本元素权限策略示例库概览

  2. 调用AttachPolicyToUserRAM用户授予账号级别的权限,注意此处PolicyType选择Custom

    或者调用AttachPolicyRAM用户授予资源组级别的权限。

授予系统策略