便利なコードパーツ集!

やまろうのプログラミングTips

Java

JavaでLDAPアクセスのライブラリを作る 〜 ディレクトリ属性の取得

投稿日:

2004/02
まずLDAPってなんやねん?ということですが、簡単にいうと階層型データベースです。
ディレクトリ構造でデータを管理するソフトウェアなわけですが、よくある
使われ方はシステムを使用するユーザの情報の管理です。ユーザIDやパスワード
なんかね。今回はLDAPからディレクトリ属性を取得する処理を作ります。

LDAPからディレクトリ属性を取得するには、
1.DirContextを取得。
2. 取得したDirContextのgetAttributes(キーとなる文字列)を呼び出す。
をおこないます。
で1を行うDirContextFactoryクラスと2を行うGetAttributesCommandクラス
を作成しました。

んじゃ、ソースいってみよう!

スポンサーリンク



実行には以下のファイル(ldap.properties)をクラスパス上に
配置しておくことが必要です。実行する環境に合わせて変更して下さい。

[ldap.properties]

java.naming.factory.initial=com.sun.jndi.ldap.LdapCtxFactory
java.naming.provider.url=ldap://localhost/ou=user,o=yamarou.co.jp
java.naming.security.authentication=simple
java.naming.security.principal=cn=Directory Manager
java.naming.security.credentials=password

GetAttributesCommandの使い方は
GetAttributesCommandTestクラスを見ていただくとわかるのですが、
GetAttributesCommandを

newして、
executeして
各属性をgetする

というものになっています。簡単でしょ!

DirContext#getAttributes(String name)を隠蔽してるってわけです。
Command自体にAttributesを持たすか、それとも
executeでAttributesをラップしたクラスを返すか迷ったのですが
とりあえず一つのクラスでカプセル化することにしました。

次回はLDAP更新系ライブラリを作ってみたいと思います。お楽しみに!

やまろう

スポンサーリンク

-Java

Copyright© やまろうのプログラミングTips , 2020 AllRights Reserved Powered by AFFINGER4.