DataWorks は MaxCompute コンピュートエンジンに、権限の申請、承認、監査を網羅するデータアクセス制御機能を提供します。申請は [マイ申請] ページで追跡でき、承認は [マイ承認タスク] ページで管理できます。
背景情報
標準モードの DataWorks ワークスペースの本番環境で、MaxCompute データソースのテーブル、リソース、関数にアクセスするには、対応する権限を申請する必要があります。
これは、本番環境の MaxCompute データソースからテーブル、リソース、または関数にアクセスする必要がある場合に該当します。
-
標準モードのワークスペースでは、DataWorks はデフォルトで開発環境の MaxCompute プロジェクトロールにメンバーを追加します。これにより、メンバーにはすべてのデータに対する読み取り権限が与えられます。詳細については、「異なるワークスペースモードにおける MaxCompute コンピュートエンジンのリソースアクセスと権限」をご参照ください。
-
標準モードのワークスペースでは、DataWorks はデフォルトで本番環境の MaxCompute プロジェクトロールにメンバーを追加しません。
-
MaxCompute のテーブル、リソース、または関数の権限は、承認者が申請を承認して初めて有効になります。
前提条件
-
MaxCompute コンピューティングリソースが ワークスペースにバインドされていること。
-
MaxCompute のデータアクセス制御の詳細 に精通していること。
-
DataWorks ワークスペースの 基本モードと標準モードの違い を理解していること。
データアクセス制御のワークフロー
ユースケース
|
シナリオ |
|
|
開発環境のユーザーが、同じワークスペースの本番環境にあるテーブル、リソース、または関数にアクセスする必要がある。 |
デフォルトでは、RAM ユーザーは本番コンピュートエンジンのアクセス ID がないと、データ開発インターフェイスから本番テーブルにアクセスできません。アクセス権を取得するには、データアクセス制御 ページで権限を申請する必要があります。申請が承認されると、ユーザーはデータ開発インターフェイスでテーブルの操作を実行できます。 |
|
開発環境または本番環境のユーザーが、別のワークスペースの開発環境または本番環境にあるテーブル、リソース、または関数にアクセスする必要がある。 |
デフォルトでは、ワークスペースのメンバーではない RAM ユーザーは、データ開発インターフェイスでプロジェクトをまたいで開発テーブルや本番テーブルにアクセスすることはできません。クロスプロジェクトアクセス権を取得するには、データアクセス制御 ページで権限を申請する必要があります。申請が承認されると、ユーザーはデータ開発インターフェイスでテーブルの操作を実行できます。 |
権限申請のワークフロー
データアクセス制御は、権限のリクエスト、権限承認、権限監査 の操作に加えて、権限リクエストレコード と 権限承認レコード の機能もサポートしています。RAM ユーザーが必要なテーブル権限を持っていない場合、権限のリクエスト ページで申請を送信できます。権限承認者 (ワークスペース管理者またはテーブル所有者) が 権限承認 ページで申請を承認すると、権限が付与されます。
DataWorks の セキュリティセンター は、デフォルトの権限申請承認ワークフローを提供します。また、承認センター で承認ワークフローをカスタマイズすることもできます。MaxCompute テーブルの列レベルの権限を申請すると、DataWorks は申請された列に基づいて承認ワークフローの種類を識別します。
リソースおよび関数の権限申請は、カスタム承認ワークフローまたは権限監査をサポートしていません。
-
権限申請者: データアクセス制御 ページで MaxCompute テーブルの権限を申請できます。申請が承認されると、マイ申請 ページで承認結果を確認し、権限が有効になったことを確認できます。
-
権限承認者: 申請を受け取った後、権限承認者は マイ承認タスク ページで申請詳細を確認し、申請を承認するか拒否するかを決定できます。処理済みの申請については、権限承認者は現在の Alibaba Cloud アカウント配下にあるテーブル、リソース、関数の承認結果を マイ承認タスク ページで確認できます。
-
[権限監査]: Alibaba Cloud アカウントの所有者またはワークスペース管理者は、権限監査 ページで、ワークスペースメンバーに付与されたテーブル権限を管理および監査できます。ワークスペースの特定のメンバーから権限を回収できます。
権限申請
データアクセス制御ページで、リクエスト内容 と リクエスト情報 セクションを設定します。
-
DataWorks コンソールにログインし、対象のリージョンに切り替えてから、左側メニューで をクリックします。表示されたページで、[セキュリティセンターへ移動] をクリックします。
-
セキュリティセンターの左側メニューで、 をクリックします。
-
データアクセス制御 ページで、権限申請タブをクリックして、MaxCompute のテーブル、リソース、または関数の権限を申請します。
テーブル権限の申請
テーブル権限を申請する際、対象テーブルを追加した後、必要に応じて テーブルレベルの権限 または Selected Columns の権限を申請できます。
設定項目
説明
[リクエスト内容]
[データソースタイプ]
MaxCompute タイプを選択します。
[リクエストタイプ]
Table[ワークスペース]
対象の
Tableが存在するワークスペースを選択します。[MaxCompute プロジェクト]
Tableが存在するワークスペースに関連付けられた MaxCompute プロジェクト。[スキーマ]
テーブルが存在するスキーマです。
[追加対象テーブル]
テーブルレベルの権限を申請
テーブルレベルの
Select、Update[、]Download[、]Describe[、]Alter[、] およびDrop権限を申請できます。列レベルの権限を申請
列レベルの
Select、Update[、]およびDownload権限を申請できます。説明MaxCompute プロジェクトに対して、テーブルレベルまたは列レベルの権限を申請できます。新しく追加された列がテーブルレベルの権限を自動的に継承するかどうかは、プロジェクトで
labelsecurityが有効になっているかどうかによって決まります:-
MaxCompute プロジェクトで
labelsecurityが有効になっていない場合:テーブルレベルのSelectおよびUpdate権限の申請に成功すると、テーブルに新しく追加された列は自動的にSelectおよびUpdate権限を継承します。 -
MaxCompute プロジェクトで
labelsecurityが有効になっている場合:テーブルレベルの権限は、新しく追加された列に自動的に継承されません。テーブルレベルのSelectおよびUpdate権限の申請に成功した後、新しく追加された列にアクセスするには、別途、列レベルの権限を申請する必要があります。
リソース権限の申請
設定項目
説明
[リクエスト内容]
[データソースタイプ]
MaxCompute タイプを選択します。
[リクエストタイプ]
Resource[ワークスペース]
対象のリソースが存在するワークスペースを選択します。
[プロジェクト]
リソースが存在するワークスペースに関連付けられている MaxCompute プロジェクトです。
[リソース名]
権限を申請するリソースです。
関数権限の申請
設定項目
説明
[リクエスト内容]
[データソースタイプ]
MaxCompute タイプを選択します。
[リクエストタイプ]
Function[ワークスペース]
対象の関数が存在するワークスペースを選択します。
[プロジェクト]
関数が存在するワークスペースに関連付けられている MaxCompute プロジェクトです。
[関数名]
権限を申請する関数の名前です。
-
-
リクエスト情報 を設定します。
設定項目
説明
[リクエスト情報]
[ユーザー]
対象リソースの権限を申請するアカウントを選択します。
-
[現在のログインアカウント]:現在 DataWorks ワークスペースにログインしている Alibaba Cloud アカウントに対して、対象テーブルの権限を申請します。
-
[スケジュール用アクセスアカウント]:スケジューリングアクセス ID として設定されている RAM ユーザーに対して、対象テーブルの権限を申請します。
-
[代理リクエスト]:現在 DataWorks ワークスペースにログインしているアカウントを使用して、別の Alibaba Cloud アカウントに対して対象テーブルの権限を申請します。このオプションを選択した場合は、ユーザー名 パラメーターを設定する必要があります。
[リクエスト期間]
権限のカスタム有効期間を指定できます。権限は有効期限が切れると自動的に回収されます。
説明この機能を使用する前に、テーブルが存在する MaxCompute プロジェクトでポリシーベースの権限付与が有効になっていることを確認してください。詳細については、「MaxCompute のデータアクセス制御の詳細」をご参照ください。MaxCompute Policy の詳細については、「MaxCompute Policy の概要」をご参照ください。
[リクエスト理由]
承認者がニーズを理解できるように、権限を申請する理由を簡潔に説明します。
-
-
権限のリクエスト をクリックし、申請を送信します。
現在の申請の承認詳細と承認履歴は、権限リクエストレコード タブで確認できます。
権限承認
権限申請者 が申請を送信した後、権限承認者 は [マイ承認タスク] ページでその申請を処理できます。
-
左側メニューで、[申請と承認] > [マイ承認タスク] を選択し、[データアクセス制御] タブをクリックします。[承認待ち] リストで、アカウントのリクエスト、リクエスト時間、ワークスペース、プロジェクト名、オブジェクト名 などの条件でフィルタリングして、現在の Alibaba Cloud アカウント配下の承認待ちの申請を表示できます。
説明1 つの申請に複数のテーブルの権限申請が含まれている場合、その申請はテーブル所有者に基づいて自動的に複数の申請に分割されます。
-
対象の申請の 操作 列にある 承認 をクリックします。承認詳細 ダイアログで、リクエストの詳細、承認レコード などの詳細を確認できます。ダイアログでは、以下の操作を実行できます:
-
申請の詳細と要件に基づいて、申請を承認するかどうかを決定します。承認コメント を入力し、同意 または 拒否 をクリックして申請を処理します。
-
申請の リクエスト内容 と 有効期限 を変更できます。
説明-
未処理のステップ: 承認権限を持つすべての承認者が表示されます。
-
処理済みのステップ: 申請を処理した承認者のみが表示されます。
承認詳細ダイアログで個別の申請を承認するだけでなく、[マイ承認タスク] ページですべての申請を選択し、バッチ同意 または バッチ拒否 をクリックすることもできます。承認コメント を入力して、対象の申請を一括で処理します。
-
権限申請履歴の表示
左側メニューで、[申請と承認] > [マイ申請] を選択し、[データアクセス制御] タブをクリックします。承認ステータス、リクエスト時間、ワークスペース などの条件でフィルタリングして、現在の Alibaba Cloud アカウント配下の申請履歴を表示できます。
また、対象の申請の 操作 列にある 詳細を表示 をクリックして、詳細情報を確認することもできます。承認ステータス が 承認中 の申請については、後続の承認操作に進むことができます。
権限承認履歴の表示
データアクセス制御ページの [権限承認履歴] タブは 非推奨 になりました。このリストは [申請と承認 > マイ承認タスク] ページに移行されました。元のタブには承認履歴リストは表示されなくなり、移行に関する通知のみが表示されます。権限承認履歴を表示するには、以下の手順に従ってください。
左側メニューで、[申請と承認] > [マイ承認タスク] を選択し、[データアクセス制御] タブをクリックします。タスクのステータスを [すべて] に設定します。アカウントのリクエスト、承認結果、ワークスペース などの条件でフィルタリングして、現在の Alibaba Cloud アカウント配下の承認履歴を表示できます。
また、対象の申請の 操作 列にある 詳細を表示 をクリックして、詳細情報を確認することもできます。
[権限監査]
[権限監査] タブで、対象リソースをフィルタリングして特定し、認可情報 を確認し、認可情報 列の 権限の取り消し または 権限の表示 をクリックします。
[権限監査] タブは現在、MaxCompute コンピュートエンジンのみをサポートしています。Hologres、DLF、Hive、Lindorm、StarRocks などの他のエンジンは、このタブでの権限監査には対応していません。
フィルター設定
権限監査リストのデータは、以下のフィルターを指定した後に読み込まれます:
-
申請タイプ:現在は [テーブル] に固定されています。
-
データソースタイプ:現在は [MaxCompute] に固定されています。
-
ワークスペース:対象のワークスペースを選択します。
-
プロジェクト:対象の MaxCompute プロジェクトを選択します。
-
スキーマ:選択したプロジェクトで 3 層モデルが有効になっている場合に表示されます。複数選択がサポートされています。
ページの上部に「権限監査では、削除されたワークスペース、プロジェクト、オブジェクトのフィルタリングはサポートされていません」という固定の通知が表示されます。削除されたオブジェクトは監査リストから除外されます。
リストの説明
フィルターを適用すると、リストには条件に一致するすべての監査可能なテーブルリソースが表示されます。行の先頭にある展開アイコンをクリックすると、権限付与の詳細が表示されます。展開されたセクションには、次の列が含まれます:
|
列 |
説明 |
|
アカウント |
テーブルに対する権限を持つアカウント。 |
|
権限付与方法 |
権限のソース (権限申請による取得 / 事前付与 / その他)。 |
|
権限 |
付与された権限 (Select / Update / Download / Describe / Alter / Drop など)。 |
|
有効期限 |
権限の有効期限。永続的な権限は無期限と表示されます。 |
権限の回収と列レベルの権限の表示
展開された行の [操作] 列には、次のボタンがあります:
-
権限の回収: 回収する権限を選択して確定します。対応するテーブルレベルの権限がアカウントから即座に回収されます。
-
権限の表示: 詳細ダイアログが表示され、アカウントがテーブルに対して持つすべての列レベルの権限が一覧表示されます。ダイアログで複数の列を選択し、[列権限の回収] をクリックして、それらの権限を回収できます。
現在のアカウントで権限監査機能が有効になっていない場合、展開された行のエリアには "No Permission" のプレースホルダーページが表示されます。テナント管理者に連絡して、アカウントの権限監査機能を有効にしてください。