SQL ステートメントを使用して、MaxCompute プロジェクトのユーザーとロールを管理します。一般的なワークフローは次のとおりです。
プロジェクトにユーザーを追加します。
ロールを作成し、プロジェクトオブジェクトに対する権限を付与します。
ユーザーにロールを割り当てます。
アクセス権を削除するには、ユーザーを削除するかロールを削除する前に、ユーザーからロールを取り消します。
これらの文は、MaxCompute クライアント、DataWorks コンソール、または MaxCompute Studio で実行できます。
次の表に、利用可能な操作をまとめます。
| 操作 | 説明 |
|---|---|
| ユーザーの追加 | Alibaba Cloud アカウントまたは RAM ユーザーをプロジェクトに追加します。 |
| ユーザーの削除 | Alibaba Cloud アカウントまたは RAM ユーザーをプロジェクトから削除します。 |
| ユーザーのリスト表示 | プロジェクト内のすべてのユーザーを表示します。 |
| ロールの作成 | プロジェクトにロールを作成します。 |
| ロールのリスト表示 | プロジェクト内のすべてのロールを表示します。 |
| ユーザーへのロールの付与 | ユーザーにロールを割り当てます。 |
| ロールからユーザーを取り消す | ユーザーからロールの割り当てを解除します。 |
| ロールの削除 | プロジェクトからロールを削除します。 |
ユーザーの追加
Alibaba Cloud アカウントまたは Resource Access Management (RAM) ユーザーを MaxCompute プロジェクトに追加します。
追加できるのは、ご自身の Alibaba Cloud アカウントに属する RAM ユーザーのみです。他の Alibaba Cloud アカウントの RAM ユーザーは追加できません。
必要なロール: プロジェクトオーナーまたは Super_Administrator ロール。
構文
add user <user_name>;パラメーター
| パラメーター | 必須 | 説明 |
|---|---|---|
user_name | はい | 追加するアカウントの名前。形式は、Alibaba Cloud アカウントの場合は ALIYUN$<username>@aliyun.com、RAM ユーザーの場合は RAM$<username> です。 |
例
Alibaba Cloud アカウントの追加:
add user ALIYUN$test_user@aliyun.com;RAM ユーザーの追加:
add user RAM$ram_test_user;ユーザーの削除
Alibaba Cloud アカウントまたは RAM ユーザーを MaxCompute プロジェクトから削除します。削除後、そのユーザーはプロジェクトリソースにアクセスできなくなります。
ユーザーを削除する前に、そのユーザーからロールを取り消してください。MaxCompute は削除後も権限データを保持します。ユーザーを再度追加すると、過去のアクセス権限が自動的に復元されます。
構文
remove user <user_name>;パラメーター
| パラメーター | 必須 | 説明 |
|---|---|---|
user_name | はい | 削除するアカウントの名前。形式は、Alibaba Cloud アカウントの場合は ALIYUN$<username>@aliyun.com、RAM ユーザーの場合は RAM$<username> です。 |
例
Alibaba Cloud アカウントの削除:
remove user ALIYUN$test_user@aliyun.com;RAM ユーザーの削除:
remove user RAM$ram_test_user;ユーザーのリスト表示
MaxCompute プロジェクト内のすべてのユーザーをリスト表示します。
list users;ロールの作成
MaxCompute プロジェクトにロールを作成します。ロールを作成した後、ユーザーに割り当てる前に、プロジェクトオブジェクトに対する権限をロールに付与する必要があります。詳細については、「ロールまたはユーザーへの権限付与」をご参照ください。
構文
create role <role_name>;パラメーター
| パラメーター | 必須 | 説明 |
|---|---|---|
role_name | はい | 作成するロールの名前。 |
例
-- player ロールを作成します。
create role player;ロールのリスト表示
MaxCompute プロジェクト内のすべてのロールをリスト表示します。
list roles;ユーザーへのロールの付与
ユーザーにロールを割り当てます。ユーザーは、そのロールに関連付けられているすべての権限を継承します。
ユーザーにロールを割り当てる前に、プロジェクトオブジェクトに対する権限をロールに付与してください。詳細については、「ロールまたはユーザーへの権限付与」をご参照ください。
構文
grant <role_name> to <user_name>;パラメーター
| パラメーター | 必須 | 説明 |
|---|---|---|
role_name | はい | 割り当てるロールの名前。 |
user_name | はい | ロールを割り当てるアカウントの名前。形式は、Alibaba Cloud アカウントの場合は ALIYUN$<username>@aliyun.com、RAM ユーザーの場合は RAM$<username> です。 |
例
-- player ロールを Alibaba Cloud アカウント test_user@aliyun.com に付与します。
grant player to ALIYUN$test_user@aliyun.com;ユーザーからのロールの取り消し
ユーザーからロールの割り当てを解除します。ユーザーは、そのロールに関連付けられているすべての権限を失います。
構文
revoke <role_name> from <user_name>;パラメーター
| パラメーター | 必須 | 説明 |
|---|---|---|
role_name | はい | 取り消すロールの名前。 |
user_name | はい | ロールを取り消すアカウントの名前。形式は、Alibaba Cloud アカウントの場合は ALIYUN$<username>@aliyun.com、RAM ユーザーの場合は RAM$<username> です。 |
例
-- Alibaba Cloud アカウント alice@aliyun.com から player ロールを取り消します。
revoke player from ALIYUN$alice@aliyun.com;ロールの削除
MaxCompute プロジェクトからロールを削除します。
ロールを削除する前に、そのロールがどのユーザーにも割り当てられていないことを確認してください。まず、すべてのユーザーからロールを取り消してください。
構文
drop role <role_name>;パラメーター
| パラメーター | 必須 | 説明 |
|---|---|---|
role_name | はい | 削除するロールの名前。 |
例
-- player ロールを削除します。
drop role player;