ErrbitをLDAP連携してログインできるようにする

投稿者: | 2015/07/28

今日もErrbitです。
ErrbitのREADMEを見ると、Configuring LDAP authenticationというのがあり、ログイン認証にLDAPを使うことができるようです。
Errbitにログインするために一々アカウントを作るのが面倒なのと、LDAPサーバがシステム内にあるので連携してみることにしました。

大体はConfiguring LDAP authenticationの通りに設定すれば良いのですが、ところどころ設定に躓いたのでまとめました。

USER_HAS_USERNAMEをtrueに変更します。

Devise LDAP Authenticatableというgemをインストールします。

config.ldap_create_userを有効にします。

devise_ldap.rbを新規作成します。

LDAP認証後にErrbitでユーザ登録させます。
上記URLの説明だとLDAPに登録されている、givenName(名)、sn(姓)、mail(メールアドレス)からユーザ情報を登録させていますが、管理しているLDAPサーバにそれらの情報は登録していないので下記のように修正します。
また、タイムゾーンとadmin権限も合わせて設定します。

注意点として、ldap_before_saveメソッドはpublicで定義する必要があるので、privateより上で定義します。

LDAPサーバへの接続設定を行います。
ErrbitをProduction環境で動かしているので以下のように設定します。

ここまで設定したら、Unicornを再起動します。
私の場合、daemontoolsで起動しているので、プロセスをバッサリ切っても自動的に起動するので問題ありません。

起動完了したら、Errbitにアクセスして、ユーザ名(メールアドレスではない)とパスワードを入力すれば、Errbitにユーザ登録されるはずです。
何かエラーがでたら、Railsのログを見て対応します。

参考URL

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*