すべてのプロダクト
Search
ドキュメントセンター

DataWorks:コンピュートエンジンアクセス用のサービスリンクロール

最終更新日:Aug 21, 2026

DataWorks で MaxCompute や E-MapReduce (EMR) などのコンピュートエンジンを使用するには、最初に必要なアクセス権限を DataWorks に付与する必要があります。権限付与後、システムは各エンジンに対して、事前定義されたアクセス権限ポリシーを持つサービスリンクロールを自動的に作成します。

背景情報

DataWorks コンソールでコンピュートエンジンインスタンスを追加または編集すると、システムが権限付与を求めるプロンプトを表示します。権限付与後、システムはサービスリンクロールを自動的に作成します。

説明
  • これらの権限を付与できるのは、AliyunDataWorksFullAccess ロールを持つ Alibaba Cloud アカウントまたは RAM ユーザーのみです。 RAM ユーザーが AliyunDataWorksFullAccess ロールを持っていない場合は、まずそのロールを割り当ててください。 詳細については、「RAM ユーザー権限の管理」をご参照ください。

  • データソース管理 などの操作を行うと、権限付与を求めるプロンプトが表示されます。

  • RAM コンソールの[ID 管理] > [ロール] ページでロールの詳細を表示できます。サービスにリンクされたロールの詳細については、「サービスにリンクされたロール」をご参照ください。

次の表に、自動的に作成されるロールと、その詳細へのリンクを示します。

ロール

目的

詳細

AliyunServiceRoleForDataworksEngine

DataWorks に MaxCompute へのアクセス権限を付与します。

ロール 1:AliyunServiceRoleForDataworksEngine

AliyunServiceRoleForDataworksOnEmr

EMR (新しいデータレイク) からメタデータを取得し、データマップでデータレコードをプレビューできるようにします。

ロール 2:AliyunServiceRoleForDataworksOnEmr

AliyunServiceRoleForDataWorks

専用リソースグループをデータソースに接続するために、VPC とセキュリティグループの設定を管理します。

AliyunServiceRoleForDataWorks サービスリンクロール

AliyunServiceRoleForDataWorksDI

データソースアクセスを設定する際に選択できるよう、RAM ロールを一覧表示します。

AliyunServiceRoleForDataWorksDI

AliyunDIDefaultRole

データソースの設定、タスクの設定、データ同期を行う際に、現在の Alibaba Cloud アカウント配下にある他のクラウドサービスのリソースへ DataWorks がアクセスできるようにします。これには、RDS、Redis、MongoDB、PolarDB-X、HybridDB for MySQL、AnalyticDB for PostgreSQL、PolarDB、DMS、DLF などのクラウドリソースに対する一部の管理権限が含まれます。

AliyunDIDefaultRole

AliyunServiceRoleForDataWorksOpenPlatform

DataWorks Open Platform のメッセージ機能とイベント機能をサポートするために、EventBridge イベントを管理します。

AliyunServiceRoleForDataWorksOpenPlatform サービスリンクロール

AliyunServiceRoleForDataWorksAccessDLF

DLF メタデータを取得し、メタデータ権限を管理します。これにより、Security Center は DLF の権限リクエストと承認を処理できます。

DLF へアクセスするためのサービスリンクロール

AliyunServiceRoleForDataWorksScheduler

EventBridge のリソースを管理し、OSS などの他のクラウドサービスのリソースにアクセスします。

AliyunServiceRoleForDataWorksScheduler サービスリンクロール

以降のセクションでは、MaxCompute および EMR (新しいデータレイク) エンジン向けのロールについて説明します。

ロール 1:AliyunServiceRoleForDataworksEngine

  • ロール名:[AliyunServiceRoleForDataworksEngine]

  • 目的:DataWorks がコンピュートエンジン (dataworks-engine) にアクセスするためのサービスリンクロールです。dataworks-engine サービスは、このロールを使用して他のクラウドサービス内のお客様のリソースにアクセスします。

  • アタッチされるポリシー:[AliyunServiceRolePolicyForDataworksEngine]

  • ポリシーの詳細:

    {
      "Version": "1",
      "Statement": [
        {
          "Action": "odps:*",
          "Effect": "Allow",
          "Resource": "*"
        },
        {
          "Action": [
            "stream:ActOnBehalfOfAnotherUser",
            "stream:CreateDeployment",
            "stream:StartJobWithParams",
            "stream:ListDeployments",
            "stream:GetDeployment",
            "stream:GetJob",
            "stream:StopJob",
            "stream:DeleteDeployment"
          ],
          "Effect": "Allow",
          "Resource": "*"
        },
        {
          "Action": "dlf-auth:ActOnBehalfOfAnotherUser",
          "Resource": "*",
          "Effect": "Allow"
        },
        {
          "Action": [
            "pai:*",
            "paiplugin:*",
            "eas:*",
            "featurestore:*"
          ],
          "Resource": "*",
          "Effect": "Allow"
        },
        {
          "Effect": "Allow",
          "Action": [
            "emr-serverless-spark:StartSessionCluster",
            "emr-serverless-spark:CreateSqlStatement",
            "emr-serverless-spark:GetSqlStatement",
            "emr-serverless-spark:TerminateSqlStatement",
            "emr-serverless-spark:ListSessionClusters",
            "emr-serverless-spark:ListWorkspaces",
            "emr-serverless-spark:ListWorkspaceQueues",
            "emr-serverless-spark:ListReleaseVersions",
            "emr-serverless-spark:CancelJobRun",
            "emr-serverless-spark:ListJobRuns",
            "emr-serverless-spark:GetJobRun",
            "emr-serverless-spark:StartJobRun",
            "emr-serverless-spark:AddMembers",
            "emr-serverless-spark:GrantRoleToUsers",
            "emr-serverless-spark:ListLogContents",
            "emr-serverless-spark:GetTemplate",
            "emr-serverless-spark:ListKyuubiServices",
            "emr-serverless-spark:GetLivyCompute",
            "emr-serverless-spark:CreateLivyCompute",
            "emr-serverless-spark:UpdateLivyCompute",
            "emr-serverless-spark:ListLivyCompute",
            "emr-serverless-spark:DeleteLivyCompute",
            "emr-serverless-spark:StartLivyCompute",
            "emr-serverless-spark:StopLivyCompute",
            "emr-serverless-spark:CreateLivyComputeToken",
            "emr-serverless-spark:GetLivyComputeToken",
            "emr-serverless-spark:ListLivyComputeToken",
            "emr-serverless-spark:DeleteLivyComputeToken",
            "emr-serverless-spark:RefreshLivyComputeToken"
          ],
          "Resource": "*"
        },
        {
          "Effect": "Allow",
          "Action": [
            "adb:SubmitSparkApp",
            "adb:GetSparkAppState",
            "adb:GetSparkAppLog",
            "adb:GetSparkAppWebUiAddress",
            "adb:ListSparkApps",
            "adb:GetSparkAppInfo",
            "adb:KillSparkApp",
            "adb:DescribeAdbMySqlTables",
            "adb:getDatabaseObjectsByFilter",
            "adb:getTable"
          ],
          "Resource": "*"
        },
        {
          "Effect": "Allow",
          "Action": [
            "lindorm:GetLindormInstanceList",
            "lindorm:GetLindormInstance",
            "lindorm:GetLindormInstanceEngineList",
            "lindorm:GetLindormV2InstanceEngineList",
            "lindorm:ListLdpsComputeGroups",
            "lindorm:RestartLdpsComputeGroup"
          ],
          "Resource": "*"
        },
        {
          "Action": "ram:DeleteServiceLinkedRole",
          "Resource": "*",
          "Effect": "Allow",
          "Condition": {
            "StringEquals": {
              "ram:ServiceName": "engine.dataworks.aliyuncs.com"
            }
          }
        },
        {
          "Action": [
            "searchengine:GetInstance",
            "searchengine:ListInstances",
            "searchengine:GetTable",
            "searchengine:ListTables"
          ],
          "Resource": "*",
          "Effect": "Allow"
        }
      ]
    }

ロール 2:AliyunServiceRoleForDataworksOnEmr

重要

このロールまたはそのアクセス権限ポリシーを変更または削除しないでください。変更または削除すると、EMR 上の DataWorks 機能が正常に機能しなくなる可能性があります。

  • ロール名:[AliyunServiceRoleForDataworksOnEmr]

  • 目的:DataWorks がデータマップでデータをプレビューし、DLF タイプの EMR クラスターからメタデータを取得し、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",
                    "emr:DescribeClusterV2",
                    "emr:DescribeCluster",
                    "emr:DescribeClusterServiceConfig",
                    "emr:DescribeFlowAgentToken",
                    "emr:DescribeClusterBasicInfo",
                    "emr:ListClusterHostComponent"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              }
          ]
      }
    • Data Lake Formation (DLF) アクセス権限

      EMR クラスターがメタデータ管理に DLF を使用している場合、このロールには、DataWorks が EMR メタデータを取得できるよう、DLF のアクセス権限も含まれます。

      {
        "Action": [
              "dlf:SubmitQuery",
              "dlf:GetQueryResult",
              "dlf:GetTable",
              "dlf:ListDatabases",
              "dlf:GetTableProfile",
              "dlf:GetCatalogSettings",
              "dlf:BatchGrantPermissions",
              "dlf:ListPartitionsByFilter",
              "dlf:ListPartitions",
              "dlf:GetHudiProperties",
              "dlf:ListCatalogs",
              "dlf:GetDatabase",
              "dlf:GetLifecycleRule",
              "dlf:GetCatalog",
              "dlf:GetIcebergNamespace",
              "dlf:GetIcebergTable"
        ],
        "Resource": "*",
        "Effect": "Allow"
      }
    • Container Service for Kubernetes (ACK) アクセス権限

      EMR クラスターが ACK で実行されている場合、このロールには次の ACK 権限も含まれます。

      {
        "Action": [
            "cs:DescribeUserPermission",
            "cs:DescribeClusterDetail",
            "cs:DescribeClusterUserKubeconfig",
            "cs:GetClusters",
            "cs:GrantPermissions",
            "cs:RevokeK8sClusterKubeConfig"
        ],
        "Resource": "*",
        "Effect": "Allow"
      }
    • サーバーレス Spark アクセス権限

      EMR クラスターがサーバーレス Spark クラスターの場合、このロールには次の権限も含まれます。

      {
        "Effect": "Allow",
        "Action": [
              "emr-serverless-spark:StartSessionCluster",
              "emr-serverless-spark:CreateSqlStatement",
              "emr-serverless-spark:GetSqlStatement",
              "emr-serverless-spark:TerminateSqlStatement",
              "emr-serverless-spark:ListSessionClusters",
              "emr-serverless-spark:ListWorkspaces",
              "emr-serverless-spark:ListWorkspaceQueues",
              "emr-serverless-spark:ListReleaseVersions",
              "emr-serverless-spark:CancelJobRun",
              "emr-serverless-spark:ListJobRuns",
              "emr-serverless-spark:GetJobRun",
              "emr-serverless-spark:StartJobRun",
              "emr-serverless-spark:AddMembers",
              "emr-serverless-spark:GrantRoleToUsers",
              "emr-serverless-spark:ListLogContents",
              "emr-serverless-spark:GetTemplate",
              "emr-serverless-spark:ListKyuubiServices",
              "emr-serverless-spark:GetLivyCompute",
              "emr-serverless-spark:CreateLivyCompute",
              "emr-serverless-spark:UpdateLivyCompute",
              "emr-serverless-spark:ListLivyCompute",
              "emr-serverless-spark:DeleteLivyCompute",
              "emr-serverless-spark:StartLivyCompute",
              "emr-serverless-spark:StopLivyCompute",
              "emr-serverless-spark:CreateLivyComputeToken",
              "emr-serverless-spark:GetLivyComputeToken",
              "emr-serverless-spark:ListLivyComputeToken",
              "emr-serverless-spark:DeleteLivyComputeToken",
              "emr-serverless-spark:RefreshLivyComputeToken",
              "emr-serverless-spark:ListLogContents"
          ],
        "Resource": "*"
      }

      次の OSS 権限は、SQL ファイルと JAR パッケージのアップロードや一時的なクエリ結果の保存を許可します。

      {
        "Action": [
         "oss:PutObject",
         "oss:GetObject",
         "oss:DeleteObject",
         "oss:DeleteObjectVersion"
          ],
        "Resource": [
          "acs:oss:*:*:*/.dataworks/*",
          "acs:oss:*:*:*/.dlsdata/*"
          ],
        "Effect": "Allow"
      },
      {
        "Action": "oss:PostDataLakeStorageFileOperation",
        "Resource": "*",
        "Effect": "Allow"
      }