やりたいこと
Red Hat build of Keycloak(Keycloakの商用版)にてユーザ名をキーにグループ名を取得する。
環境情報
- Red Hat Enterprise Linux : 9.3 (Plow)
- rhbk-22.0.8
やり方
以下のようにユーザ情報を出力した上で
./kc.sh export --dir Test --users different_files
ユーザ情報が格納されたmasterファイルからユーザ名(test01)を条件にグループ情報を出力する。
$ cat master-users-0.json | jq -r '.users[] | select(.username == "test01") | .groups' [ "/testg" ]
以下、補足です。
補足
出力したユーザファイルは以下のように個別のユーザに対して値が格納されているのでグループ情報を出力しました。
{ "id": "xx", "createdTimestamp": xx, "username": "test01", "enabled": true, "totp": false, "emailVerified": false, "attributes": { "hoge": [ "piyo" ] }, "credentials": [ { "id": "xx", "type": "password", "createdDate": xx, "secretData": "{\"value\":\"..." } ], "disableableCredentialTypes": [], "requiredActions": [], "realmRoles": [ "default-roles-master" ], "notBefore": 0, "groups": [ "/testg" ] }
尚、グループを複数持っている場合は以下のように出力されます。
[ "/test01g", "/test02g" ]
以上。