Dataphin service-linked roles
Sometimes, a cloud service needs to access other cloud services to function. Alibaba Cloud provides service-linked roles (SLRs) for this purpose. A service-linked role is a special type of RAM role that only an Alibaba Cloud service can assume. For more information, see RAM role overview, Service-linked roles.
Limitations
Only users with the ram:CreateServiceLinkedRole permission can create service-linked roles. You can ask an administrator to grant you the AliyunDataphinFullAccess RAM role or the required permissions.
Dataphin SLR use cases
Use case 1: Synchronize Alibaba Cloud account information.
Dataphin uses the
AliyunServiceRoleForDataphinOnRAMSLR to synchronize RAM user information from your main account.Use case 2: Create MaxCompute compute sources and data sources.
Dataphin uses the
AliyunServiceRoleForDataphinOnOdpsSLR to access MaxCompute projects in your main account. This role allows Dataphin to:Query all MaxCompute projects in your main account.
Create a
dp-project-schedulerole in the selected MaxCompute project.Assign the
dp-project-schedulerole to theAliyunServiceRoleForDataphinOnOdpsSLR.
NoteFor MaxCompute projects that use this SLR, you can create Pyodps tasks only with Python 3.11.
Use case 3: Create Alibaba Cloud data sources.
Dataphin uses the
AliyunServiceRoleForDataphinOnDataBaseSLR to access specific types of Alibaba Cloud data sources in your main account. This role allows Dataphin to:Query instances of RDS for MySQL, AnalyticDB for MySQL, AnalyticDB for PostgreSQL, and PolarDB in your main account.
Query basic information about a specified instance, such as its connection endpoint and instance ID.
Detailed SLR permissions
To view SLR permissions, go to the RAM console. In the left-side navigation pane, choose Identities > Roles to view details about the service-linked roles.
Dataphin relies on the following SLRs for daily operations. You can delete these SLRs only after your Dataphin service expires.
Role name:
AliyunServiceRoleForDataphinOnRAMRole description: Allows Dataphin to query RAM user information.
Permissions:
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": "ram:ListUserBasicInfos", "Resource": "*" }, { "Action": "ram:DeleteServiceLinkedRole", "Resource": "*", "Effect": "Allow", "Condition": { "StringEquals": { "ram:ServiceName": "ram.dataphin.aliyuncs.com" } } } ] }Role name:
AliyunServiceRoleForDataphinOnOdpsRole description: Allows Dataphin to access MaxCompute resources.
Permissions:
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "odps:CreateRole", "odps:UpdateUsersToRole", "odps:ListProjects" ], "Resource": "*" } ] }Role name:
AliyunServiceRoleForDataphinOnDataBaseRole description: Allows Dataphin to access cloud database resources.
Permissions:
{ "Version": "1", "Statement": [ { "Action": [ "rds:DescribeDBInstanceAttribute", "rds:DescribeDBInstanceNetInfo", "rds:DescribeDBInstances", "rds:DescribeRegions", "rds:DescribeDatabases", "rds:DescribeSecurityGroupConfiguration", "rds:DescribeDBInstanceIPArrayList", "rds:ModifySecurityGroupConfiguration", "rds:ModifySecurityIps" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "gpdb:DescribeDBInstanceAttribute", "gpdb:DescribeDBInstances", "gpdb:DescribeResourceUsage", "gpdb:DescribeDBInstanceIPArrayList", "gpdb:DescribeDBClusterIPArrayList", "gpdb:DescribeDBInstancePerformance", "gpdb:DescribeDBInstanceNetInfo", "gpdb:DescribeRegions", "gpdb:ModifySecurityIps" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "polardb:DescribeClusterInfo", "polardb:DescribeDBClusterParameters", "polardb:DescribeDBClusterEndpoints", "polardb:ModifyDBClusterAccessWhitelist", "polardb:DescribeDBClusterAccessWhitelist", "polardb:DescribeRegions" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "adb:DescribeDBClusters", "adb:DescribeDBClusterAttribute", "adb:DescribeClusterAccessWhiteList", "adb:DescribeClusterNetInfo", "adb:ModifyClusterAccessWhiteList" ], "Resource": "*", "Effect": "Allow" } ] }Role name:
AliyunServiceRoleForDataphinOnCsRole description: Allows Dataphin to query basic information about other cloud services, such as EMR Serverless Spark, Data Lake Formation (DLF), and DataWorks.
Permissions:
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless-spark:AddMembers", "emr-serverless-spark:GrantRoleToUsers", "emr-serverless-spark:ListWorkspaces", "emr-serverless-spark:ListCatalogs", "emr-serverless-spark:ListKyuubiServices", "emr-serverless-spark:ListKyuubiToken", "emr-serverless-spark:GetKyuubiService", "dlf:ListDatabases", "dlf:ListCatalogs", "dataworks:GetProject", "dataworks:ListProjects", "dataworks:ListDataSources", "dataworks:ListCrawlerTypes", "dataworks:ListCatalogs", "dataworks:ListDatabases", "dataworks:ListSchemas", "dataworks:ListTables", "dataworks:GetTable", "dataworks:ListColumns", "dataworks:ListPartitions" ], "Resource": "*" }, { "Action": "ram:DeleteServiceLinkedRole", "Resource": "*", "Effect": "Allow", "Condition": { "StringEquals": { "ram:ServiceName": "cs.dataphin.aliyuncs.com" } } } ] }