第2章 ロールの管理
2.1. ロールの管理 リンクのコピーリンクがクリップボードにコピーされました!
OpenStack はロールベースアクセス制御 (RBAC) のメカニズムを使用して、リソースへのアクセスを管理します。ロールは、ユーザーが実行可能なアクションを定義します。デフォルトでは、テナントにアタッチされるメンバーロールと、管理者以外のユーザーが環境を管理できるようにする管理者ロールという事前定義済みのロールが 2 つあります。パーミッションには抽象レベルがあり、管理者が必要なロールを作成して適切にサービスを設定することができる点に注意してください。
2.1.1. ロールの表示 リンクのコピーリンクがクリップボードにコピーされました!
利用可能な事前定義済みのロールをリスト表示するには、以下のコマンドを使用します。
指定したロールの詳細を取得するには、以下のコマンドを実行します。
keystone role-get [ROLE]
$ keystone role-get [ROLE]
例
2.1.2. ロールの作成および割り当て リンクのコピーリンクがクリップボードにコピーされました!
クラウド管理者は、以下のコマンド一式を使用して Keystone クライアントでロールを作成、管理できます。各 OpenStack デプロイメントには、最低でもプロジェクト、ユーザー、ロールが 1 つずつあり、それらが連携している必要があります。ただし、ユーザーは複数のプロジェクトのメンバーになることができます。複数のプロジェクトにユーザーを割り当てるには、ロールを作成して、ユーザーとプロジェクトのペアにそのロールを割り当てます。Dashboard でユーザーを作成して、主プロジェクトとデフォルトのロールを割り当てることができる点に注意してください。
ユーザー、ロール、プロジェクトの指定には名前または ID を使用することができます。
new-roleという名前のロールを作成します。keystone role-create --name [ROLE_NAME]
$ keystone role-create --name [ROLE_NAME]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ユーザーをプロジェクトに割り当てるには、ロールをユーザーとプロジェクトのペアに割り当てる必要があります。これには、ユーザー、ロール、プロジェクト名/ID を取得してください。
ユーザーをリスト表示します。
keystone user-list
$ keystone user-listCopy to Clipboard Copied! Toggle word wrap Toggle overflow ロールをリスト表示します。
keystone role-list
$ keystone role-listCopy to Clipboard Copied! Toggle word wrap Toggle overflow プロジェクトをリスト表示します。
keystone tenant-list
$ keystone tenant-listCopy to Clipboard Copied! Toggle word wrap Toggle overflow
ユーザーとプロジェクトのペアにロールを割り当てます。
keystone user-role-add --user [USER_NAME] --role [ROLE_NAME] --tenant [TENANT_NAME]
$ keystone user-role-add --user [USER_NAME] --role [ROLE_NAME] --tenant [TENANT_NAME]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
以下の例では、
new-roleロールをdemo-demoペアに割り当てます。keystone user-role-add --user demo --role new-role --tenant demo
$ keystone user-role-add --user demo --role new-role --tenant demoCopy to Clipboard Copied! Toggle word wrap Toggle overflow ユーザー
demoのロール割り当てを確認します。keystone user-role-list --user [USER_NAME] --tenant [TENANT_NAME]
$ keystone user-role-list --user [USER_NAME] --tenant [TENANT_NAME]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
keystone user-role-list --user demo --tenant demo
$ keystone user-role-list --user demo --tenant demoCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.1.3. ロールの削除 リンクのコピーリンクがクリップボードにコピーされました!
以下のコマンドを使用して、ユーザーとプロジェクトのペアからロールを削除します。ロールを削除すると、関連するユーザーとプロジェクトのペアリングが失われます。
keystone user-role-remove --user [USER_NAME] --role [ROLE] --tenant [TENANT_NAME]
$ keystone user-role-remove --user [USER_NAME] --role [ROLE] --tenant [TENANT_NAME]Copy to Clipboard Copied! Toggle word wrap Toggle overflow ロールの削除を確認します。
keystone user-role-list --user [USER_NAME] --tenant [TENANT_NAME]
$ keystone user-role-list --user [USER_NAME] --tenant [TENANT_NAME]Copy to Clipboard Copied! Toggle word wrap Toggle overflow ロールが削除されると、コマンドの出力により、削除されたロールが省略されます。