18.11. グループ操作
グループの作成
groups
エンドポイントで create
コマンドを使用して新規グループを作成します。
以下に例を示します。
$ kcadm.sh create groups -r demorealm -s name=Group
グループのリスト表示
groups
エンドポイントで get
コマンドを使用してグループのリストを表示します。
以下に例を示します。
$ kcadm.sh get groups -r demorealm
特定グループの取得
グループの ID を使用して、groups/GROUP_ID
などのエンドポイント URI を作成します。
以下に例を示します。
$ kcadm.sh get groups/51204821-0580-46db-8f2d-27106c6b5ded -r demorealm
グループの更新
update
コマンドを、特定のグループの取得に使用したのと同じエンドポイント URI で使用します。
以下に例を示します。
$ kcadm.sh update groups/51204821-0580-46db-8f2d-27106c6b5ded -s 'attributes.email=["group@example.com"]' -r demorealm
グループの削除
delete
コマンドを、特定のグループを取得するために使用したのと同じエンドポイント URI で使用します。
以下に例を示します。
$ kcadm.sh delete groups/51204821-0580-46db-8f2d-27106c6b5ded -r demorealm
サブグループの作成
グループをリスト表示して、親グループの ID を検索します。その ID を使用して groups/GROUP_ID/children
などのエンドポイント URI を作成します。
以下に例を示します。
$ kcadm.sh create groups/51204821-0580-46db-8f2d-27106c6b5ded/children -r demorealm -s name=SubGroup
別のグループでのグループの移動
- 既存の親グループの ID と既存の子グループの ID を検索します。
-
親グループの ID を使用して
groups/PARENT_GROUP_ID/children
などのエンドポイント URI を作成します。 -
このエンドポイントで
create
コマンドを実行し、子グループの ID を JSON の本文として渡します。
以下に例を示します。
$ kcadm.sh create groups/51204821-0580-46db-8f2d-27106c6b5ded/children -r demorealm -s id=08d410c6-d585-4059-bb07-54dcb92c5094 -s name=SubGroup
特定ユーザーのグループを取得する
ユーザーの ID を使用してグループ内のユーザーのメンバーシップを判別し、users/USER_ID/groups
などのエンドポイント URI を作成します。
以下に例を示します。
$ kcadm.sh get users/b544f379-5fc4-49e5-8a8d-5cfb71f46f53/groups -r demorealm
グループへのユーザーの追加
users/USER_ID/groups/GROUP_ID
などのユーザーの ID とグループの ID で構成されるエンドポイント URI で update
コマンドを使用し、ユーザーをグループに追加します。
以下に例を示します。
$ kcadm.sh update users/b544f379-5fc4-49e5-8a8d-5cfb71f46f53/groups/ce01117a-7426-4670-a29a-5c118056fe20 -r demorealm -s realm=demorealm -s userId=b544f379-5fc4-49e5-8a8d-5cfb71f46f53 -s groupId=ce01117a-7426-4670-a29a-5c118056fe20 -n
グループからのユーザーの削除
users/USER_ID/groups/GROUP_ID
などのグループにユーザーを追加するのに使用するエンドポイント URI で delete
コマンドを使用し、グループからユーザーを削除します。
以下に例を示します。
$ kcadm.sh delete users/b544f379-5fc4-49e5-8a8d-5cfb71f46f53/groups/ce01117a-7426-4670-a29a-5c118056fe20 -r demorealm
グループに割り当てられている利用可能で有効なレルムロールのリスト表示
専用の get-roles
コマンドを使用して、グループに割り当てられた、利用可能かつ有効なレルムロールをリスト表示します。
グループに 割り当てられた レルムロールをリスト表示するには、名前 (
--gname
オプション)、パス (--gpath
オプション)、ID(--gid
オプション) でターゲットグループを指定します。以下に例を示します。
$ kcadm.sh get-roles -r demorealm --gname Group
有効な レルムロールをリスト表示するには、
--effective
オプションを使用します。以下に例を示します。
$ kcadm.sh get-roles -r demorealm --gname Group --effective
--available
オプションを使用して、グループに追加できるレルムロールをリスト表示します。以下に例を示します。
$ kcadm.sh get-roles -r demorealm --gname Group --available
グループに割り当てられた、利用可能、有効なクライアントロールのリスト表示
グループに割り当てられ、利用可能で有効なクライアントロールをリスト表示するには、get-roles
コマンドを使用します。
-
ターゲットグループを名前 (
--gname
オプション) または ID(--gid
オプション) で指定します。 clientId 属性 (
--cclientid
オプション) または ID(--id
オプション) でクライアントを指定して、そのユーザーに 割り当てられた クライアントロールをリスト表示します。以下に例を示します。
$ kcadm.sh get-roles -r demorealm --gname Group --cclientid realm-management
有効な レルムロールをリスト表示するには、
--effective
オプションを使用します。以下に例を示します。
$ kcadm.sh get-roles -r demorealm --gname Group --cclientid realm-management --effective
--available
オプションを使用して、グループに依然として追加可能なレルムロールをリスト表示します。以下に例を示します。
$ kcadm.sh get-roles -r demorealm --gname Group --cclientid realm-management --available