RAM Policy常见示例

更新时间:
复制为 MD 格式

通过RAM Policy,您可以集中管理您的用户(例如员工、系统或应用程序)以及控制用户可以访问您名下哪些资源的权限,例如授予RAM用户管理某个前缀下的迁移任务。

RAM用户授予自定义的权限策略

  1. 创建自定义权限策略。

    您可以结合实际使用场景,选用下文列举的常见示例,然后通过脚本配置方式创建自定义权限策略。具体操作请参考创建自定义权限策略,创建自定义权限策略推荐使用脚本编辑的方式。

  2. RAM用户授予自定义权限策略。

    创建自定义权限策略后,可以根据业务需求授权给不同RAM用户,支持多个用户使用同一策略;也可以绑定到拥有相同权限需求的用户组,以便组内用户共享策略。

示例一:授予RAM用户某个任务的管理权限

以下示例说明如何为RAM用户授予任务my_job_name的管理权限。

{
  "Version": "1",
  "Statement": [
    {
      "Action": "mgw:*",
      "Resource": [
        "acs:mgw:*:*:job",
        "acs:mgw:*:*:job/my_job_name"
      ],
      "Effect": "Allow"
    }
  ]
}

示例二:授予RAM用户某个前缀下所有任务的管理权限

以下示例说明如何为RAM用户授予以my_job_name_prefix为前缀的任务的管理权限。

{
  "Version": "1",
  "Statement": [
    {
      "Action": "mgw:*",
      "Resource": [
        "acs:mgw:*:*:job",
        "acs:mgw:*:*:job/my_job_name_prefix*"
      ],
      "Effect": "Allow"
    }
  ]
}

示例三:授予RAM用户某个数据地址的管理权限

以下示例说明如何为RAM用户授予数据地址my_address_name的管理权限。

{
  "Version": "1",
  "Statement": [
    {
      "Action": "mgw:*",
      "Resource": [
        "acs:mgw:*:*:address",
        "acs:mgw:*:*:address/my_address_name"
      ],
      "Effect": "Allow"
    }
  ]
}

示例四:授予RAM用户某个前缀下所有数据地址的管理权限

以下示例说明如何为RAM用户授予以my_address_name_prefix为前缀的数据地址的管理权限。

{
  "Version": "1",
  "Statement": [
    {
      "Action": "mgw:*",
      "Resource": [
        "acs:mgw:*:*:address",
        "acs:mgw:*:*:address/my_address_name_prefix*"
      ],
      "Effect": "Allow"
    }
  ]
}

示例五:授予RAM用户某个代理的管理权限

以下示例说明如何为RAM用户授予代理my_agent_name的管理权限。

{
  "Version": "1",
  "Statement": [
    {
      "Action": "mgw:*",
      "Resource": [
        "acs:mgw:*:*:agent",
        "acs:mgw:*:*:agent/my_agent_name"
      ],
      "Effect": "Allow"
    }
  ]
}

示例六:授予RAM用户某个前缀下所有代理的管理权限

以下示例说明如何为RAM用户授予以my_agent_name_prefix为前缀的代理的管理权限。

{
  "Version": "1",
  "Statement": [
    {
      "Action": "mgw:*",
      "Resource": [
        "acs:mgw:*:*:agent",
        "acs:mgw:*:*:agent/my_agent_name_prefix*"
      ],
      "Effect": "Allow"
    }
  ]
}

示例七:授予RAM用户代理的鉴权权限

以下示例说明如何为RAM用户授予代理的鉴权权限。

说明

部署代理使用的AK必须有该权限,否则代理状态不可用。

{
  "Version": "1",
  "Statement": [
    {
      "Action": [
        "mgw:VerifyAgentTunnel"
      ],
      "Resource": "acs:mgw:*:*:*",
      "Effect": "Allow"
    }
  ]
}

示例八:授予RAM用户某个通道的管理权限

以下示例说明如何为RAM用户授予通道my_tunnel_id的管理权限。

{
  "Version": "1",
  "Statement": [
    {
      "Action": "mgw:*",
      "Resource": [
        "acs:mgw:*:*:tunnel",
        "acs:mgw:*:*:tunnel/my_tunnel_id"
      ],
      "Effect": "Allow"
    }
  ]
}

示例九:为不同RAM用户配置特定资源的差异化权限

某企业有两个部门,A部门使用RAM用户A,B部门使用RAM用户B,不同的RAM用户在同一主账号下,两个部门希望隔离管理各自的资源。

可以通过为不同RAM用户配置指定前缀的资源管理权限来实现,如RAM用户A管理资源前缀为prefix_a,RAM用户B管理资源前缀为prefix_b。以下示例说明如何为RAM用户AB配置权限,使其分别管理各自前缀的资源,包括迁移任务、数据地址、代理。

  1. RAM用户A配置以prefix_a为前缀的资源的管理权限。

{
  "Version": "1",
  "Statement": [
    {
      "Action": "mgw:*",
      "Resource": [
        "acs:mgw:*:*:job",
        "acs:mgw:*:*:job/prefix_a*",
        "acs:mgw:*:*:address",
        "acs:mgw:*:*:address/prefix_a*",
        "acs:mgw:*:*:agent",
        "acs:mgw:*:*:agent/prefix_a*",
        "acs:mgw:*:*:tunnel",
        "acs:mgw:*:*:tunnel/*"
      ],
      "Effect": "Allow"
    }
  ]
}
  1. RAM用户B配置以prefix_b为前缀的资源的管理权限。

{
  "Version": "1",
  "Statement": [
    {
      "Action": "mgw:*",
      "Resource": [
        "acs:mgw:*:*:job",
        "acs:mgw:*:*:job/prefix_b*",
        "acs:mgw:*:*:address",
        "acs:mgw:*:*:address/prefix_b*",
        "acs:mgw:*:*:agent",
        "acs:mgw:*:*:agent/prefix_b*",
        "acs:mgw:*:*:tunnel",
        "acs:mgw:*:*:tunnel/*"
      ],
      "Effect": "Allow"
    }
  ]
}