在DataWorks上操作其他引擎时,您需先授权DataWorks可访问其他引擎(例如,MaxCompute、EMR等)的相关权限。授权成功后,系统会自动创建一个对应引擎服务关联角色。本文为您介绍在DataWorks上授权使用引擎类云产品时自动创建的角色及角色权限策略详情。
背景信息
当在DataWorks控制台进行引擎相关操作时(如新增引擎实例、编辑已有引擎),界面会提示您需先完成授权相关操作,您根据界面提示完成授权操作后,系统会自动为您创建好对应服务的关联角色。
下文为您重点介绍MaxCompute引擎、EMR(新版数据湖)相关的角色详情。
当前DataWorks支持通过授权自动创建的角色列表及对应的角色详情介绍引导如下。
角色列表 | 角色用途 | 详情链接 |
---|---|---|
AliyunServiceRoleForDataworksEngine | 授权DataWorks访问MaxCompute。 | 角色1:AliyunServiceRoleForDataworksEngine |
AliyunServiceRoleForDataworksOnEmr | 获取EMR(新版数据湖)的元数据信息,用于数据地图预览数据记录值。 | 角色2:AliyunServiceRoleForDataworksOnEmr |
AliyunServiceRoleForDataWorks | 获取、修改VPC网络配置及安全组配置,用于打通DataWorks独享资源组与数据源间的网络链路,实现网络连通。 | DataWorks服务关联角色 |
AliyunServiceRoleForDataWorksDI | 获取RAM角色列表,在配置角色访问数据源功能时支持选择角色。 | AliyunServiceRoleForDataWorksDI介绍 |
AliyunDIDefaultRole | 在进行数据源配置、任务配置、数据同步时,允许DataWorks访问当前云账号下的其他云产品资源。包含RDS、Redis、MongoDB、PolarDB-X、HybridDB for MySQL、AnalyticDB PostgreSQL版、PolarDB、DMS、DLF等云资源的部分管理权限。 | AliyunDIDefaultRole介绍 |
AliyunServiceRoleForDataWorksOpenPlatform | 获取与修改EventBridge中的事件,用于支撑DataWorks开放平台中的产品消息事件能力。 | 附录:DataWorks服务关联角色 |
AliyunServiceRoleForDataWorksAccessDLF | 获取数据湖构建(DLF)元数据信息、执行元数据权限授予与回收等操作,用于实现安全中心对DLF元数据进行申请、审批能力。 | 附录:DataWorks访问DLF的服务关联角色 |
AliyunServiceRoleForDataworksDataMap | 读取OSS Bucket、Object及日志信息,删除某个存储空间(Bucket)中指定的清单(Inventory)任务。 | 服务关联角色 |
角色1:AliyunServiceRoleForDataworksEngine
- 角色名称:AliyunServiceRoleForDataworksEngine
- 角色用途:用于授权DataWorks访问MaxCompute。
- 绑定的角色策略:AliyunServiceRolePolicyForDataworksEngine
- 权限策略详情:
{ "Version": "1", "Statement": [ { "Action": "odps:*", "Effect": "Allow", "Resource": "*" }, { "Action": [ "pai:*", "paiplugin:*", "eas:*" ], "Resource": "*", "Effect": "Allow" }, { "Action": "ram:DeleteServiceLinkedRole", "Resource": "*", "Effect": "Allow", "Condition": { "StringEquals": { "ram:ServiceName": "engine.dataworks.aliyuncs.com" } } } ] }
角色2:AliyunServiceRoleForDataworksOnEmr
重要 授权后自动生成的角色及角色权限策略请勿随意修改、删除,否则会无法正常使用DataWorks on EMR功能。
- 角色名称:AliyunServiceRoleForDataworksOnEmr
- 角色用途:用于在数据地图中预览数据记录值、获取EMR集群(DLF类型)的元数据信息以及获取EMR集群的各项配置信息。
- 绑定的角色策略:AliyunServiceRolePolicyForDataworksOnEmr
- 权限策略详情:
- EMR 的访问权限
{ "Version": "1", "Statement": [ { "Action": [ "emr:GetCluster", "emr:GetOnKubeCluster", "emr:GetClusterClientMeta", "emr:GetApplicationConfigFile", "emr:ListClusters", "emr:ListNodes", "emr:ListNodeGroups", "emr:ListApplications", "emr:ListApplicationConfigs", "emr:ListApplicationConfigFiles", "emr:ListApplicationLinks", "emr:ListComponentInstances" ], "Resource": "*", "Effect": "Allow" } ] }
- DLF(数据湖构建)的访问权限如果EMR集群使用DLF来统一管理元数据时,自动创建的角色权限策略中还会包含以下DLF的访问权限,用于DataWorks获取EMR的元数据信息。
{ "Action": [ "dlf:SubmitQuery", "dlf:GetQueryResult", "dlf:GetTable", "dlf:ListDatabases", "dlf:GetTableProfile", "dlf:GetCatalogSettings", "dlf:BatchGrantPermissions", "dlf:ListPartitionsByFilter", "dlf:ListPartitions" ], "Resource": "*", "Effect": "Allow" }
- ACK(容器服务 Kubernetes 版)的访问权限如果EMR集群是EMR on ACK时,自动创建的角色权限策略中还会包含以下ACK的访问权限。
{ "Action": [ "cs:DescribeUserPermission", "cs:DescribeClusterDetail", "cs:DescribeClusterUserKubeconfig", "cs:GetClusters", "cs:GrantPermissions", "cs:RevokeK8sClusterKubeConfig" ], "Resource": "*", "Effect": "Allow" }
- EMR 的访问权限