🪪
KeycloakとLDAPを連携する.
前提
- OS:Ubuntu
- LDAP:OpenLDAP
- OpenLDAPにいくつかユーザデータを登録済み
手順
1. realm(レルム)を新たに作成
- 適当に名前を決める.
- 以後,新たに作成したrealm内でLDAPの連携を行う.
Configure(設定)
のUser federation(ユーザー・フェデレーション)
に,ldap設定を追加する.
2.
User federation
→ Add Ldap providers
をクリック
2.1 2.2 LDAPの設定を行う
2.2.1 LDAPとの接続設定
主な変数 | 詳細 |
---|---|
接続URL | 接続するLDAPサーバのURL |
バインドDN | LDAP管理者のDN |
Bind Credentials | LDAP管理者のパスワード |
- 接続テストと認証テストは行うことを推奨.
2.2.2 LDAP検索と編集の設定
主な変数 | 詳細 |
---|---|
編集モード | keycloakからLDAPデータを編集させるかどうかの設定 |
ユーザーDN | 検索したいユーザが存在するLDAPツリーのDN.` |
ユーザー名のLDAP属性 | keycloak側のユーザ名としてマッピングされるLDAP属性 |
RDN LDAP属性 | RDNに使用するLDAP属性 |
UUID LDAP属性 | LDAPのオブジェクトのUUIDとして使用される属性 |
検索スコープ | subtreeと設定すると,ユーザーDN の方で設定したDN配下全てを検索できる. |
2.2.3 同期設定
3. ユーザー確認
-
Manage(管理)
→Users(ユーザー)
画面に移る. - 検索欄に
*
を打てば,全てのユーザデータを検索・表示できる.
- ユーザーの詳細画面の例
4. ※ユーザー詳細画面にLDAPで登録したユーザーの属性を追加・表示したい時
-
ユーザー・フェデレーション
→対象のフェーデレーション
→マッパー
を選択する.
-
Add mapper
をクリックすると,下記のような画面が出現する.
-
マッパータイプ
は,user-attribute-ldap-mapper
を選択 -
LDAP Attribute
には,追加したいLDAP属性を設定. -
User Model Attribute
には,Keycloak側で表示するLDAP Attribute
の属性名を新たに設定.例えば,LDAPで設定したcn
属性をKeycloak側,つまりUser Model Attribute
では,employeeID
として表現および表示することができる.
Discussion