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

DataWorks:DataWorks での EMR タスク実行の権限管理

最終更新日:Jan 11, 2025

DataWorks で E-MapReduce(EMR)タスクを実行する前に、タスクが想定どおりに実行されるように、EMR 側と DataWorks 側で認証と承認の設定を完了する必要があります。このトピックでは、DataWorks と EMR での権限の管理方法について説明します。

背景情報

DataWorks では、ワークスペースのメンバーと、ワークスペースに関連付けられた EMR クラスタのアカウント間のマッピングを設定して、EMR クラスタの権限を取得できます。このようにして、Alibaba Cloud アカウント、タスク所有者、または RAM ユーザーは、DataWorks で EMR タスクを実行するときにデータに対して異なる権限を持ち、データ権限は分離されます。DataWorks で EMR タスクを実行するために必要な権限設定の詳細については、このトピックのEMR 側での権限管理セクションとDataWorks 側での権限管理セクションを参照してください。

制限事項

DataWorks では、システムアカウントまたは OpenLDAP アカウントのみを使用して、ワークスペースのメンバーと、計算エンジンインスタンスとして DataWorks に登録されている EMR クラスタのアカウント間のマッピングを設定できます。マッピングを設定する際は、以下の点に注意してください。

  • マッピングはクラスタレベルでのみ設定できます。認証方式は 1 つだけ使用できます。

  • マッピング内の EMR クラスタのアカウントとパスワードは、DataWorks に登録されている EMR クラスタの実際のアカウントとパスワードと同じである必要があります。

マッピング内の EMR クラスタのアカウントとパスワードが実際のアカウントとパスワードと一致しない場合、またはクラスタで認証が有効になっていない場合、EMR タスクは DataWorks で実行できません。次の表で詳細を説明します。

マッピングタイプの値

説明

システムアカウントへのマッピング

アカウントまたはパスワードが一致しない場合、EMR タスクは DataWorks で実行されません。

OpenLDAP アカウントへのマッピング

以下のシナリオでは、EMR タスクは DataWorks で実行されません。

  • 目的のクラスタで LDAP 認証が有効になっているが、DataWorks でアカウントマッピングが設定されていない。

  • DataWorks で LDAP 認証が有効になっているが、EMR クラスタの目的のサービスで無効になっている。

    説明

    OpenLDAP アカウントを使用してマッピングを設定する場合、Hive、Impala、Presto などの SQL タスクは、デフォルトでこのアカウントを認証に使用します。この場合、EMR クラスタの目的のサービスで LDAP 認証が有効になっていないと、SQL タスクは実行されません。

説明

EMR クラスタの認証方式は、計算エンジンによって異なります。EMR コンソールで、EMR クラスタが LDAP 認証をサポートしているかどうかを確認できます。

EMR 側での権限管理

  • LDAP 認証の有効化

    EMR クラスタでシステム以外のアカウントを ID 認証に使用する場合、クラスタの LDAP 認証を有効にし、DataWorks で EMR タスクを開発するために使用するアカウントを LDAP ユーザーに追加する必要があります。この場合、次の手順を実行する必要があります。

    1. クラスタの LDAP 認証を有効にします。

      ID 認証に LDAP を使用するには、クラスタの LDAP 認証を有効にする必要があります。詳細については、「LDAP 認証の有効化」をご参照ください。

    2. EMR タスクを実行するために使用するアカウントを準備し、そのアカウントを LDAP ユーザーと関連する DataWorks ワークスペースに追加します。

      DataStudio で EMR タスクの作成、テスト、コミット、デプロイを行う必要があるユーザーを、LDAP ユーザーと関連する DataWorks ワークスペースに追加することをお勧めします。DataWorks ワークスペースにアカウントを追加する方法の詳細については、ユーザー、ロール、権限の概要をご参照ください。

  • データ権限の管理

    EMR クラスタのサービスを管理して、データ権限を分離できます。たとえば、EMR Ranger を使用して、Alibaba Cloud アカウントにマッピングされている EMR クラスタアカウントの権限を管理できます。

DataWorks 側での権限管理

  • DataWorks への EMR クラスタの登録

    DataWorks で EMR タスクを実行する前に、EMR クラスタを DataWorks に登録する必要があります。これにより、クラスタを DataWorks で計算エンジンインスタンスとして使用できます。AliyunEMRFullAccess ポリシーがアタッチされているアカウントのみがこの操作を実行できます。AliyunEMRFullAccess ポリシーをアカウントにアタッチする方法の詳細については、「ユーザー、ロール、権限の概要」をご参照ください。

  • DataWorks サービスモジュールに対する権限をアカウントに付与する

    DataWorks で EMR タスクを実行するには、DataStudio、データマップ、データ品質、インテリジェントモニタリングなどの DataWorks サービスモジュールに対する権限が付与されている必要があります。権限を取得すると、EMR タスクの開発、タスクの O&M 操作の実行、タスクのデータ品質の監視を行うことができます。サービスモジュールの権限の詳細については、「ユーザー、ロール、権限の概要」をご参照ください。

  • アカウントマッピングの設定

    セキュリティモードで EMR クラスタを DataWorks に登録した後、[settingcenter][クラスタ管理] ページに移動します。このページで、DataWorks ワークスペースのメンバーと、DataWorks に登録されている EMR クラスタのアカウント間のマッピングを設定します。これにより、DataWorks ワークスペースのメンバーは、マッピングされたアカウントと同じ権限を持ちます。

    説明

    EMR クラスタを DataWorks に登録し、マッピングを設定する方法の詳細については、「DataWorks の設定」をご参照ください。