やりたいこと
Keycloak(RedHat SSO)上に存在するユーザをexportコマンドにて出力する。
環境情報
- Linux(fedora)
- keycloak-21.1.2
やり方
Keycloakが稼働しているサーバ上で以下のようにレルムを指定してコマンドを押下する。
$ /kc.sh export --file ./test.json --realm master
以下、補足です。
補足
エクスポートコマンドで出力したファイルはテキストで出力されるので細かいユーザの状態を確認することができます。
$ file test.json test.json: ASCII text, with very long lines
例えば一時パスワード状態になっているユーザを抽出したい場合はパスワードに関する箇所は以下のようになっているので
"credentials" : [ { "id" : "xx", "type" : "password", "userLabel" : "My password", "createdDate" : xx, "secretData" : "{\"value\":\"xx\",\"salt\":\"xx\",\"additionalParameters\":{}}", "credentialData" : "{\"hashIterations\":xx,\"algorithm\":\"pbkdf2-sha256\",\"additionalParameters\":{}}" } ], "disableableCredentialTypes" : [ ], "requiredActions" : [ "UPDATE_PASSWORD" ], ...
「requiredActions」がUPDATE_PASSWORDとなっているユーザがそれに該当します。(パスワード未設定やパスワードの設定時にTemporaryのONを外していると空欄となっているため)
以上。