使用标签控制资源访问

当EDAS的应用和集群绑定标签后,您可以使用标签控制资源的访问权限。本文以应用为例,介绍如何为RAM用户授予特定的策略,通过标签来控制RAM用户对应用的相关权限。

前提条件

背景信息

阿里云的用户权限是基于策略为管理主体的,您可以根据不同用户的职责配置RAM策略。在策略中,您可以定义多个标签,然后将一个或多个策略授权给RAM用户或用户组。如果要控制RAM用户可以访问哪些资源,您可以创建自定义策略并使用标签来实现访问控制。

使用标签控制资源的访问权限仅支持RAM鉴权,不支持EDAS内置的鉴权模式。更多权限管理信息,请参见权限管理概述

假设在EDAS上已部署3个应用,这三个应用分别属于不同环境和不同项目,且所绑定的标签信息如下:

app-001:
    Environment=TEST  #测试环境
    Team=team1       #项目1
app-002:
    Environment=DEV   #开发环境
    Team=team1       #项目1
app-003:
    Environment=PROD  #生产环境
    Team=team2       #项目2

假设您有三个RAM用户(user1,user2和user3),为实现权限最小管控,您可以为RAM用户授予目标资源的访问权限。假设有以下三种场景:

  • user1需要管理所有的开发环境和测试环境的应用。

  • user2需要管理项目1下的所有测试环境的应用。

  • user3需要访问除了生产环境以外所有的应用。

您可以使用标签来自定义权限策略,实现上述RAM用户的需求。

使用标签配置自定义权限策略

  1. 使用阿里云账号(主账号)或具有管理权限的RAM用户登录RAM控制台

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

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

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

  5. 输入权限策略内容,然后单击继续编辑基本信息

    基于背景信息中列出的三个场景,本文提供的示例权限策略内容如下:

    • user1需要管理所有的开发环境和测试环境的应用。

      {
        "Statement": [
          {
            "Action": "edas:ManageApplication",
            "Effect": "Allow",
            "Resource": "*",
            "Condition": {
              "StringEquals": {
                "edas:tag/Environment": ["DEV", "TEST"]
              }
            }
          }
        ],
        "Version": "1"
      }
    • user2需要管理项目1下的所有测试环境的应用。

      {
        "Statement": [
          {
            "Action": "edas:ManageApplication",
            "Effect": "Allow",
            "Resource": "*",
            "Condition": {
              "StringEquals": {
                "edas:tag/Team": ["team1"],
                "edas:tag/Environment": ["TEST"]
              }
            }
          }
        ],
        "Version": "1"
      }
    • user3需要访问除了生产环境以外所有的应用。

      {
        "Statement": [
          {
            "Action": "edas:ReadApplication",
            "Effect": "Allow",
            "Resource": "*"
          },
          {
            "Action": "edas:ReadApplication",
            "Effect": "Deny",
            "Resource": "*",
            "Condition": {
              "StringEquals": {
                "edas:tag/Environment": ["PROD"]
              }
            }
          }
        ],
        "Version": "1"
      }
  6. 输入策略名称备注,然后在策略内容区域检查设置的策略内容,然后单击确定

    添加完自定义权限策略后,新增策略出现在权限策略列表。

为RAM用户授权

  1. 使用阿里云账号登录RAM控制台

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

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

  4. 添加权限面板的授权范围区域,单击云账号全部资源

  5. 添加权限面板的选择权限区域,单击自定义策略,在搜索文本框搜索目标策略,然后单击目标策略,再单击确定

    添加权限

  6. 添加权限面板,确认授权信息并单击完成

RAM用户访问资源

RAM用户登录EDAS控制台,查看是否能访问目标资源。