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

Simple Log Service:MaxCompute への書き込みのためのカスタムロールの権限付与 (同一アカウント)

最終更新日:Jun 23, 2026

データ転送ジョブ (新バージョン) が実行されると、Logstore から MaxCompute テーブルにデータが転送されます。この操作では、データ転送ジョブがカスタム RAM ロールを偽装するように権限を付与できます。このトピックでは、ご利用の MaxCompute プロジェクトと Simple Log Service プロジェクトが同一の Alibaba Cloud アカウントにある場合に、カスタム RAM ロールを承認する方法について説明します。

前提条件

  • RAM ユーザーを使用する場合、そのユーザーに RAM ロールを管理する権限があることを確認してください。

  • DataWorks で、ご利用の MaxCompute プロジェクトを MaxCompute データソースとして追加します。詳細については、「MaxComputeコンピューティングリソースのバインド」をご参照ください。

操作手順

RAM ロールに MaxCompute への書き込み権限を付与すると、データ転送ジョブはそのロールを偽装して、Logstore から送信先の MaxCompute テーブルにデータを書き込むことができます。これらの権限は、RAM ロールをワークスペースメンバーとして追加することで付与できます。

  1. RAM ロール (例: MaxComputeShipRole) を作成します。詳細については、「Alibaba Cloud サービス用の RAM ロールの作成」をご参照ください。

    重要
    • RAM ロールを作成する際、[プリンシパルタイプ][クラウドサービス] に、[プリンシパル名][Simple Log Service] に設定します。

    • RAM ロールの信頼ポリシーを確認します。Service 要素に、少なくとも "log.aliyuncs.com" が含まれていることを確認してください。

      {
        "Statement": [
          {
            "Action": "sts:AssumeRole",
            "Effect": "Allow",
            "Principal": {
              "Service": [
                "log.aliyuncs.com"
              ]
            }
          }
        ],
        "Version": "1"
      }
  2. RAM ロールの信頼ポリシーを変更します。詳細については、「RAM ロールの信頼ポリシーの変更」をご参照ください。

    既存の信頼ポリシーを以下の内容に置き換えます。

    {
      "Statement": [
        {
          "Action": "sts:AssumeRole",
          "Effect": "Allow",
          "Principal": {
            "Service": [
              "log.aliyuncs.com",
              "dataworks.aliyuncs.com"
            ]
          }
        }
      ],
      "Version": "1"
    }
  3. RAM ロールをワークスペースメンバーとして追加します。

    1. DataWorks コンソールにログインします。

    2. ページの左上隅で、リージョンを選択します。

    3. 左側のナビゲーションウィンドウで、ワークスペース をクリックします。[ワークスペース] ページで、対象のワークスペースを見つけ、[操作] 列の 管理 をクリックします。

    4. ワークスペース ページの [ワークスペースメンバーとロール] タブで、メンバーの追加 をクリックします。

    5. メンバーの追加 ダイアログボックスで、現在のログインアカウントと対象の RAM ロールを追加します。

      バッチセットの役割 セクションで、[開発者] を選択します。詳細については、「他のユーザーへの権限付与」をご参照ください。

    6. RAM ロールに MaxCompute テーブルを管理する権限を付与します。

      1. MaxCompute コンソールにログインし、左上隅でリージョンを選択します。

      2. 左側のナビゲーションウィンドウで、ワークスペース > プロジェクト管理 を選択します。プロジェクト管理 ページで、対象プロジェクトの [操作] 列にある 管理 をクリックします。image

      3. MaxCompute プロジェクト管理ページで、ロールの権限 をクリックします。image.png

        エラーが発生した場合は、Alibaba Cloud アカウントを使用して、現在の RAM ユーザーを MaxCompute プロジェクトに追加します。ロールリストで admin ロールを見つけ、[メンバーの管理] をクリックします。[メンバーの管理] ダイアログボックスで、現在の RAM ユーザーを選択し、画面の指示に従ってユーザーを追加します。image.png

      4. ロールリストで role_project_admin ロールを見つけ、[メンバーの管理] をクリックします。

      5. メンバー管理 ダイアログボックスで、現在のログインアカウントと対象の RAM ロール (例: MaxComputeShipRole) を追加します。

      6. ロールリストで role_project_admin ロールを見つけ、[ロールの編集] をクリックします。

      7. [ロールの編集] ダイアログボックスの [テーブル] タブで、対象の MaxCompute テーブルを選択し、DescribeAlterUpdate の各権限を付与します。image.png

    重要

    上記の手順では、指定した MaxCompute テーブルに対する権限のみが付与されます。RAM ロールに現在の MaxCompute プロジェクト内のすべてのテーブルに対する権限を付与したい場合は、現在のログインアカウントと対象の RAM ロールに admin ロールを付与できます。これを行うには、ロールリストで メンバー管理 ロールの [メンバーの管理] をクリックします。メンバー管理 ダイアログボックスで、現在のログインアカウントと対象の RAM ロールを追加します。

  4. MaxCompute データ転送ジョブを作成します。

    権限付与が完了したら、データ転送ジョブ (新バージョン) を作成できます。設定で、MaxCompute 書き込み権限の付与Custom Role に設定し、カスタム RAM ロールの Alibaba Cloud リソース名 (ARN) (例: acs:ram::10**12:role/maxcomputeshiprole) を入力します。これにより、データ転送ジョブはカスタム RAM ロールを偽装して、MaxCompute テーブルにデータを転送できるようになります。詳細については、「MaxCompute データ転送ジョブの作成 (新バージョン)」をご参照ください。

よくある質問