このトピックでは、テナントレベルのロールへの権限付与方法、関連コマンドの使用方法、およびクォータや NetworkLink などのテナントレベルオブジェクトへのアクセス制御を目的としたロール管理方法について説明します。
背景情報
MaxCompute では、プロジェクト、テーブル、関数、リソース、インスタンスなどのオブジェクトに対する権限は通常プロジェクトレベルで管理され、権限を付与する前にユーザーをプロジェクトに追加する必要があります。一方で、policy を使用して、テナントレベルの role に quota や NetworkLink オブジェクトに対する操作権限を付与できます
前提条件
テナントレベルの権限を管理できるのは、Alibaba Cloud アカウント (root ユーザー) またはテナントレベルの Super_Administrator/Admin 権限を持つ RAM ユーザーのみです。
テナントレベルの権限は、テナントレベルのロールを介してのみ制御できます。
テナントレベルの
roleへの権限付与は、policyを使用して行う必要があります。
テナントレベルのロールによる権限付与のワークフロー
テナントレベルのロールとして
t_role1を作成します。policyを使用してt_role1ロールに権限を付与しますユーザーをテナントメンバーとして追加します。
ユーザーに
t_role1ロールを割り当てます。
コマンド
-- テナント内のプロジェクトで以下のコマンドを実行します。
-- テナントへのユーザーの追加または削除。
ADD tenant USER <user_name>;
REMOVE tenant USER <user_name>;
-- テナント内のユーザーおよびロールの一覧表示。
List tenant users;
List tenant roles;
-- テナントレベルのロールの作成または削除。
CREATE tenant role <role_name>;
DROP tenant role <role_name>;
-- ユーザーへのテナントレベルのロールの付与または取り消し。
GRANT tenant role <rolename> TO USER <user_name>;
REVOKE tenant role <rolename> FROM USER <user_name>;
-- プロジェクトへのテナントレベルのロールの追加または削除。
ADD tenant role <rolename> TO project <projectname>;
REMOVE tenant role <rolename> FROM project <projectname>;
-- テナントレベルのロールまたはユーザーの権限一覧表示。
SHOW grants FOR tenant role <role_name>;
SHOW grants FOR tenant USER <user_name>;
SHOW principals FOR tenant [role] <role_name>;
コンソールでの権限管理
テナントロールの作成
MaxCompute コンソール にログインし、左上隅からリージョンを選択します。
左側のナビゲーションウィンドウで、 を選択します。
テナント管理 ページで、ロール管理 タブをクリックします。
ロール管理 タブで、新しいロール をクリックします。新しいロール ダイアログボックスで、ロール名: および ポリシーの内容: を入力し、OK をクリックしてロールを作成します。
パラメーター
説明
ロール名:
テナントレベルのロールに付与する一意の名前で、以下の要件を満たす必要があります:
英字で始まる。
英字、アンダースコア (_ )、数字のみを使用可能。
文字数は 6~64 文字。
ポリシーの内容:
ロールの権限ポリシーです。画面で提供されるポリシーテンプレートに基づき、ポリシーのコードを編集してください。
ポリシー内容の例(以下は次のような意味です):
networklinkオブジェクトに対して、当該ロール がすべての networklink に対してCreateNetworkLink、List、Executeの各操作を実行できるように許可します。Quotaオブジェクトに対して、当該ロール がすべてのリージョンにおけるすべてのクォータに対してUsage操作を実行できるように許可します。
{ "Statement":[ { "Action":[ "odps:CreateNetworkLink", "odps:List", "odps:Execute" ], "Effect":"Allow", "Resource":[ "acs:odps:*:networklinks/*" ] }, { "Action":[ "odps:Usage" ], "Effect":"Allow", "Resource":[ "acs:odps:*:regions/*/quotas/*" ] } ], "Version":"1" }テナント管理 ページで、ユーザー管理 タブをクリックします。
このタブでは、テナントレベルのユーザーを管理できます。具体的には、現在の Alibaba Cloud アカウントから新しいユーザーを追加し、テナントレベルのロールを付与することが可能です。
テナントロールの管理
MaxCompute コンソール にログインし、左上隅からリージョンを選択します。
左側のナビゲーションウィンドウで、 を選択します。
テナント管理 ページで、ロール管理 タブをクリックします。
ロール一覧の 操作 列から、ロールの表示、削除、変更が可能です。
テナントユーザーの管理
MaxCompute コンソール にログインし、左上隅からリージョンを選択します。
左側のナビゲーションウィンドウで、 を選択します。
テナント管理 ページで、ユーザー管理 タブをクリックします。
このタブでは、テナントレベルのユーザーを管理できます。具体的には、現在の Alibaba Cloud アカウントから新しいユーザーを追加し、テナントレベルのロールを付与することが可能です。