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

DataWorks:付録: DataWorks がコンピューティングエンジンが属する Alibaba Cloud サービスにアクセスするために使用するサービスリンクロール

最終更新日:Jan 11, 2025

DataWorks で MaxCompute や E-MapReduce(EMR)などのコンピューティングエンジンを使用するには、コンピューティングエンジンが属する Alibaba Cloud サービスへのアクセスを DataWorks に承認する必要があります。承認が完了すると、関連するコンピューティングエンジンが属する Alibaba Cloud サービスのサービスリンクロールがシステムによって作成されます。このトピックでは、コンピューティングエンジンが属する Alibaba Cloud サービスへのアクセスを DataWorks に承認したときに自動的に作成されるサービスリンクロールと、ロールにアタッチされるポリシーについて説明します。

背景情報

DataWorks コンソールで、コンピューティングエンジンのワークスペースへの関連付けや既存のコンピューティングエンジンインスタンスの変更など、コンピューティングエンジン関連の操作を実行する場合、システムは DataWorks の承認操作を実行するように求めます。承認が完了すると、関連するコンピューティングエンジンが属する Alibaba Cloud サービスのサービスリンクロールがシステムによって作成されます。

説明
  • AliyunDataWorksFullAccess ポリシーがアタッチされている Alibaba Cloud アカウントまたは RAM ユーザーのみが、コンピューティングエンジンに関連する操作を実行するために DataWorks を承認できます。RAM ユーザーとしてコンピューティングエンジンに関連する操作を実行する場合は、AliyunDataWorksFullAccess ポリシーが RAM ユーザーにアタッチされていることを確認する必要があります。RAM ユーザーに権限を付与する方法については、RAM ユーザーへの権限の付与を参照してください。

  • 次の操作を実行する場合は、コンピューティングエンジンが属する Alibaba Cloud サービスへのアクセスを DataWorks に承認する必要があります: データソースの作成と管理

  • RAM コンソールにログインし、[ロール] ページに移動して、コンピューティングエンジンが属する Alibaba Cloud サービスに対して作成されたサービスリンクロールを検索し、サービスリンクロールに関する情報を表示できます。サービスリンクロールの詳細については、サービスリンクロールを参照してください。

次の表に、承認に基づいて自動的に作成できるサービスリンクロールを示します。

ロール名

ロール権限

参照

AliyunServiceRoleForDataworksEngine

DataWorks が MaxCompute にアクセスすることを許可します。

ロール 1: AliyunServiceRoleForDataworksEngine

AliyunServiceRoleForDataworksOnEmr

EMR DataLake クラスターのメタデータ情報を取得し、データマップで関連データレコードをプレビューします。

ロール 2: AliyunServiceRoleForDataworksOnEmr

AliyunServiceRoleForDataWorks

仮想プライベートクラウド (VPC) のネットワーク設定とセキュリティグループの設定を取得および変更し、DataWorks 専用リソースグループとデータソース間のネットワーク接続を確立します。

DataWorks サービスリンクロール

AliyunServiceRoleForDataWorksDI

Data Integration が RAM ロールを取得し、カスタム RAM ロールを引き受けてデータソースにアクセスできるようにします。

AliyunServiceRoleForDataWorksDI ロールの説明

AliyunDIDefaultRole

データソースの設定、ノード設定、データ同期中に、現在のアカウントによってアクティブ化された他の Alibaba Cloud サービスのリソースに DataWorks がアクセスできるようにします。サービスには、ApsaraDB RDS、ApsaraDB for Redis、ApsaraDB for MongoDB、PolarDB-X、HybridDB for MySQL、AnalyticDB for PostgreSQL、PolarDB、Data Management (DMS)、Data Lake Formation (DLF) が含まれます。

AliyunDIDefaultRole ロールの説明

AliyunServiceRoleForDataWorksOpenPlatform

EventBridge のイベントにアクセスして変更し、DataWorks Open Platform のメッセージイベント機能をサポートします。

付録: DataWorks サービスリンクロール

AliyunServiceRoleForDataWorksAccessDLF

DataWorks が DLF のメタデータ情報にアクセスし、ユーザーにメタデータの権限を付与し、ユーザーからメタデータの権限を取り消すことを許可します。このロールは、セキュリティセンターで DLF メタデータの権限のアプリケーションとリクエスト処理を実装するために使用されます。

付録: DataWorks が DLF にアクセスするために使用するサービスリンクロール

以下のセクションでは、MaxCompute コンピューティングエンジンと EMR DataLake クラスターに関連するサービスリンクロールについて説明します。

ロール 1: AliyunServiceRoleForDataworksEngine

  • ロール名: AliyunServiceRoleForDataworksEngine

  • ロール権限: DataWorks が MaxCompute にアクセスすることを承認します。

  • ロールにアタッチされたポリシー: AliyunServiceRolePolicyForDataworksEngine

  • ポリシードキュメント:

    {
      "Version": "1",
      "Statement": [
        {
          // odps のすべてのアクションを許可
          "Action": "odps:*",
          "Effect": "Allow",
          "Resource": "*"
        },
        {
          // pai、paiplugin、eas のすべてのアクションを許可
          "Action": [
            "pai:*",
            "paiplugin:*",
            "eas:*"
          ],
          "Resource": "*",
          "Effect": "Allow"
        },
        {
          // サービスリンクロールの削除を許可
          "Action": "ram:DeleteServiceLinkedRole",
          "Resource": "*",
          "Effect": "Allow",
          "Condition": {
            "StringEquals": {
              "ram:ServiceName": "engine.dataworks.aliyuncs.com"
            }
          }
        }
      ]
    }

ロール 2: AliyunServiceRoleForDataworksOnEmr

重要

承認に基づいて自動的に作成されたサービスリンクロールと、ロールにアタッチされたポリシーは、変更または削除しないでください。変更または削除すると、DataWorks で EMR 機能を使用できなくなります。

  • ロール名: AliyunServiceRoleForDataworksOnEmr

  • ロール権限: データマップでデータレコードをプレビューし、メタデータ管理に DLF を使用する EMR DataLake クラスターのメタデータ情報と EMR DataLake クラスターの構成を取得します。

  • ロールにアタッチされたポリシー: AliyunServiceRolePolicyForDataworksOnEmr

  • ポリシードキュメント:

    • EMR にアクセスするための権限

      {
          "Version": "1",
          "Statement": [
              {
                // EMR 関連のアクションを許可
                "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 DataLake クラスターがメタデータの管理に DLF を使用している場合、サービスリンクロールにアタッチされたポリシーには、DLF への次のアクセス権限も含まれています。これらの権限により、DataWorks は EMR DataLake クラスターのメタデータ情報を取得できます。

      {
        // DLF 関連のアクションを許可
        "Action": [
          "dlf:SubmitQuery",
          "dlf:GetQueryResult",
          "dlf:GetTable",
          "dlf:ListDatabases",
          "dlf:GetTableProfile",
          "dlf:GetCatalogSettings",
          "dlf:BatchGrantPermissions",
          "dlf:ListPartitionsByFilter",
          "dlf:ListPartitions"
        ],
        "Resource": "*",
        "Effect": "Allow"
      }
    • Container Service for Kubernetes (ACK) にアクセスするための権限

      EMR on ACK クラスターにアクセスする場合、ロールにアタッチされたポリシーには、ACK への次のアクセス権限も含まれています。

      {
        // ACK 関連のアクションを許可
        "Action": [
          "cs:DescribeUserPermission",
          "cs:DescribeClusterDetail",
          "cs:DescribeClusterUserKubeconfig",
          "cs:GetClusters",
          "cs:GrantPermissions",
          "cs:RevokeK8sClusterKubeConfig"
        ],
        "Resource": "*",
        "Effect": "Allow"
      }
    • Serverless Spark にアクセスするための権限

      EMR Serverless Spark クラスターにアクセスする場合、ロールにアタッチされたポリシーには、Serverless Spark への次のアクセス権限も含まれています。

      {
        "Effect": "Allow",
        // EMR Serverless Spark 関連のアクションを許可
        "Action": [
          "emr-serverless-spark:TerminateSqlStatement",
          "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"
          ],
        "Resource": "*"
      }

      SQL ファイルまたは JAR パッケージをアップロードしたり、アドホッククエリ結果を保存したりする場合、ロールにアタッチされたポリシーには、オブジェクトストレージサービス (OSS) への次のアクセス権限も含まれています。

      {
        // OSS 関連のアクションを許可
        "Action": [
          "oss:PutObject",
          "oss:GetObject",
          "oss:DeleteObject"
          ],
        "Resource": [
          "acs:oss:*:*:*/.dataworks/*",
          "acs:oss:*:*:*/.dlsdata/*"
          ],
        "Effect": "Allow"
      },
      {
        // OSS Data Lake Storage 関連のアクションを許可
        "Action": "oss:PostDataLakeStorageFileOperation",
        "Resource": "*",
        "Effect": "Allow"
      }