そのためにLDAPを利用しようとしていますが、LDAPのことがよくわかりません。
大規模サイトでは、きっとLDAPを利用して認証していると思うのですが、この目的に、LDAPを利用するという方法は正しいでしょうか。他に良い方法はありますでしょうか?
あと、LDAPを利用するメリット、デメリットを教えて下さい。
参考情報:
1台のLinuxサーバ上で、LDAPサーバ、LDAPクライアント、Webアプリケーション全てを入れようとしています。将来的にアクセスが増えたら、LDAPサーバ、DBサーバなど別々にすることを考えています。
XOOPSでは、LDAP拡張hackが既にあります。
OpenPNEでは、2.6.0からLDAPに対応したようです。
代用的な実装である OpenLDAP の説明ページです。
実際の使用例が載っているので分かりやすいと思います。
http://www.ki.rim.or.jp/~kuro/OpenLDAP/
また、LDAP 全般についてはこちらにも説明があります。
http://www.atmarkit.co.jp/flinux/rensai/root02/root02a.html
LDAP のメリットとしては
・対応アプリケーション同士ではアカウント等の情報を共有できる
・検索は比較的早い
・(実装にもよるが)レプリケーションなどがあり、冗長性を保てる
デメリットとしては
・更新処理は比較的遅い
・大抵のアプリケーションは自前認証なので対応アプリケーションは多くない(Web 系では)
・表記等が独特なのでとっつきにくい
といった感じです。
今回の場合、自作のWebアプリケーションが LDAP に対応すれば全てのアプリケーションのアカウントが統合できる可能性がるので LDAP の採用は間違いではないと思います。
ただ、一般的にはWebアプリケーションで LDAP 認証と言うのは少ない(大抵DBに独自情報を持つ)と思うので将来的に連携するアプリケーションが増えるようなら多少疑問は残ります。
といってもDBでの認証の場合他のアプリケーション連携を考慮している事はほとんど無いので自分で同期する処理等を組み込まねばならず、手間としてはさほど変わらないのかもしれません。
基本的には、「今現在は珍しいけど使い方としては正しい」と言うのが自分の印象です。
非常にわかりやすかったです。ありがとうございました。