OpenDS
(Translate to English)Wednesday Aug 02, 2006
いま cn=Directory Managerのエントリ読んで知ったんだけど, OpenDS プロジェクトが java.net にて先週から始まっている.
OpenDS は完全に Java で書かれたオープンソースのディレクトリ・サービスです. なぜ 「ディレクトリ・サービス」 という言葉を使うかというと, わたしたちは単なる 「LDAP アクセス可能なデータベース」 以上の機能をこの中に盛り込んでいくからです. (Sun の) 現行の Directory Server Enterprise Edition と同様の機能, すなわちディレクトリ・プロクシ (バーチャル・ディレクトリおよびデータ分散) や, Active Directory など他のソースとの同期, そしてさまざまなクライアント・ツールを包含する予定です.
Introducing the OpenDS Directory Service - cn=Directory Manager より引用
ためしにウィークリー・ビルドを動かしてみた.
まずは
OpenDS Downloads ページから
「Get the Latest Weekly Build」
をたどって,
現時点で唯一のプリビルト・バージョンである
OpenDS 0.1 Build 001
をダウンロード.
OpenDS-0.1-build001.zip を適当なところに展開.
Unix / Windows はどちらでもよかったんだけど,
今回は Windows XP を使ってたので, とりあえず C:\
に展開.
環境変数 JAVA_HOME を設定. 手元の環境では 1.5.0_07 が c:\Program Files\Java\jdk1.5.0 に入ってたので, 以下の通り:
C:\OpenDS-0.1>set JAVA_HOME=c:\Program Files\Java\jdk1.5.0
OpenDS 0.1 Build 001 にはエントリのサンプルがついてないので, まずはなにかインポートしないといまいち遊べない. 今回は docs.sun.com にあった LDIF ファイルのサンプルを借用してみた. これを sample.ldif として C:\ に配置し, bin\import-ldif.bat を実行. バックエンドの名前はディフォルトで userRoot なので, それをオプション -n に指定.
C:\OpenDS-0.1>bin\import-ldif.bat -l \sample.ldif -n userRoot
[02/8/2006:11:56:09 +0900] category=BACKEND severity=NOTICE id=8388697 msg="Import thread count = 8"
[02/8/2006:11:56:09 +0900] category=BACKEND severity=NOTICE id=8388698 msg="Buffer size per thread = 32,000,000"
[...]
[02/8/2006:11:56:12 +0900] category=BACKEND severity=NOTICE id=8388701 msg="Flushing data to disk."
[02/8/2006:11:56:12 +0900] category=BACKEND severity=NOTICE id=8388702 msg="Processed 8 entries, imported 8, skipped 0, and rejected 0 in 3 seconds (average rate 2.2/sec)."
[02/8/2006:11:56:12 +0900] category=BACKEND severity=NOTICE id=8388703 msg="Number of index values that exceeded the entry limit: 0"
C:\OpenDS-0.1>
ここまでできたところで, いよいよ OpenDS を起動. 別のコンソールで, (JAVA_HOME を指定してから) start-ds.bat を実行.
C:\OpenDS-0.1>bin\start-ds.bat
[02/8/2006:11:56:28 +0900] category=CORE severity=NOTICE id=458886 msg="OpenDS Directory Server 0.1 starting up."
[02/8/2006:11:56:32 +0900] category=BACKEND severity=NOTICE id=8847402 msg="A database backend containing 8 entries has started."
[02/8/2006:11:56:33 +0900] category=CONFIG severity=SEVERE_WARNING id=3277325 msg="Access control has been disabled."
[02/8/2006:11:56:50 +0900] category=CORE severity=NOTICE id=458887 msg="The Directory Server has started successfully."
[02/8/2006:11:56:50 +0900] category=CORE severity=NOTICE id=458891 msg="The Directory Server has sent an alert notification generated by class org.opends.server.core.DirectoryServer (alert type org.opends.server.DirectoryServerStarted, alert ID 458887): The Directory Server has started successfully.."
本当に動いているのかどうか, ためしに同梱の ldapsearch コマンドで検索してみる. ディフォルトでは ポート 389, Base DN は dc=example,dc=com なので (ちなみに root ユーザの DN は cn=Directory Manager, パスワードは password), いわゆるユーザ一覧を検索するには以下のようにする.
C:\OpenDS-0.1>bin\ldapsearch.bat -b dc=example,dc=com objectclass=inetorgperson
dn: uid=abrown,ou=People,o=MyCorp,dc=example,dc=com
objectClass: top
objectClass: person
objectClass: inetOrgPerson
objectClass: organizationalPerson
givenName: Aaron
userPassword: {SSHA}MbmYn39jI1S56RpyARHrdr5kCkY1iFkVe58LQQ==
cn: Aaron Brown
facsimiletelephonenumber: 666
sn: Brown
mail: abrown@mycorp.com
uid: abrown
[...]
C:\OpenDS-0.1>
LDAP Browser / Editor
でみるとこんなん:
...という具合に, 最前線の LDAP 職人たちが創るフリーのディレクトリ・サービス実装を, この機会にぜひ一度お試しあれ.
Tags: directoryserver identitymanagement ldap opends











