本文主要介绍在RAM访问控制中,如何通过阿里云账号配置RAM账号对DLA的访问权限。

DLA的API操作说明

在DLA中一个基本的概念是虚拟集群,阿里云账号可以在自定义策略中通过API定义一系列的操作和组合来限制RAM账号的权限。API定义如下表所示:
API 说明
openanalytics:ConsolePermission 允许被授权的RAM账户可以访问DLA控制台,如果RAM账户没有此权限则只能通过阿里云OpenAPI通过API的方式来使用DLA。
openanalytics:CreateVirtualCluster 允许被授权的RAM账户在DLA服务中新建一个虚拟集群。
openanalytics:GetVirtualCluster 允许被授权的RAM账户在DLA服务中获取一个虚拟集群的状态和配置。
openanalytics:ListVirtualClusters 允许被授权的RAM账户查询虚拟集群列表。
openanalytics:UpdateVirtualCluster 允许被授权的RAM账户修改虚拟集群的状态和配置,表示该用户可以修改虚拟集群的CPU、Memory配置,以及开启、停止虚拟集群。
openanalytics:DeleteVirtualCluster 允许被授权的RAM账户删除虚拟集群。
openanalytics:ExecuteOnVirtualCluster 允许被授权的RAM账户在虚拟集群中提交作业。
当您希望用户可以获取虚拟集群的状态,同时可以在虚拟集群中提交作业。您可以在RAM控制台中新建一个自定义权限策略,具体操作请参见创建自定义策略,并配置如下脚本:
{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "openanalytics:ConsolePermission",
                "openanalytics:ListVirtualCluster",
                "openanalytics:GetVirtualCluster",
                "openanalytics:ExecuteOnVirtualCluster"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}

通过上述操作被授予了自定义权限策略的RAM账号就拥有了DLA控制台的访问权限,并可以在DLA控制台中查找虚拟集群,向虚拟集群提交作业。

配置RAM账号只能访问某个特定的虚拟集群

当您希望RAM账号只能访问某几个特定的虚拟集群时,就需要修改自定义权限策略中的Resource来更细粒度的控制RAM账号访问权限。Resource取值示例和说明如下:
 acs:openanalytics:${RegionId}:${OwnerId}:virtualcluster/${VirtualClusteName}
参数 说明
RegionId 区域。映射关系如下:
  • 杭州:cn-hangzhou
  • 北京:cn-beijing
  • 上海:cn-shanghai
  • 深圳:cn-shenzhen
  • 张家口:cn-zhangjiakou
  • 中国香港:cn-hongkong
  • 新加坡:ap-southeast-1
  • 雅加达:ap-southeast-5
  • 以上所有区域:*
OwnerId 为资源所在的阿里云账户的账户ID。您可以在阿里云账号的安全设置中看到自己的账号ID。
VirtualClusterName 虚拟集群的名称。
参考上述说明您可以组装出一个虚拟集群对应的唯一一个ResourceId,并将这个ResourceId配置到RAM控制台的自定义策略中,您就可以更细粒度的控制RAM账号的行为,配置示例如下:
//该示例让RAM用户只能操作杭州区域的daily-test集群,其它的集群则无法进行操作。
{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "openanalytics:ConsolePermission",
                "openanalytics:ListVirtualCluster",
                "openanalytics:GetVirtualCluster",
                "openanalytics:ExecuteOnVirtualCluster"
            ],
            "Resource": "acs:openanalytics:cn-hangzhou:123456:virtualcluster/daily-test"
            "Effect": "Allow"
        }
    ]
}