【仕事メモ】OpenDJ (Windows版 ver2.6.0) インストール方法

#Windows版のOpenDJをインストールする
Linux版のOpenDJをインストールすることに失敗したため、Windows版をインストールする手順を記載します。
※ちょっと時間がないのでキャプチャのみ先に貼り付けておこうと思います。

残念ながらOpenDJ2.6.0はJava8に対応していないため、Java7を敢えてダウンロードしてきます。

Java7(JRE7)　ダウンロードURL
http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html

![image.png](https://qiita-image-store.s3.amazonaws.com/0/138274/84937454-9340-4246-c422-838952f465ea.png)

GUIのインストールモードはなぜか起動しませんでした…
のでCLIでインストールを実行します。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/138274/fa9f5d39-bb74-881a-0a75-ce4395fe9dd8.png)

![image.png](https://qiita-image-store.s3.amazonaws.com/0/138274/b2b1ff0e-cefe-d0c8-b152-38e52b1888a6.png)

![image.png](https://qiita-image-store.s3.amazonaws.com/0/138274/9d82f713-24f0-9d98-acc0-2efe71acf93c.png)

![image.png](https://qiita-image-store.s3.amazonaws.com/0/138274/8dfc14ab-4254-a71d-9db4-b3462c26106a.png)

![image.png](https://qiita-image-store.s3.amazonaws.com/0/138274/d12b8244-0d00-f113-18e6-fc2fdfa4f427.png)

以下のbatファイルを実行します。

```powershell:実行するbatファイル
C:\Users\Administrator\Desktop\opendj\bat\status.bat
```

batファイルを実行したら、OpenDJのbindユーザー(管理者ユーザー)のアカウント/パスワードを入力することでステータスをコマンドプロンプト上で確認することが可能です。

↑までの手順がOpenDJサーバのインストールになります。
↓の手順でOpenDJサーバにDemo用のデータを登録していきます。

まずはOpenDJのコントロールパネルを起動します。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/138274/d3d9a154-324d-ff4f-6bff-fb4937d1ac02.png)

１．LDAPエントリーの登録
１－１．
制御パネルから「エントリの管理」を選択します。
エントリの管理画面が表示され、BaseDNが表示されます。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/138274/8990c825-d3e4-33a3-12c3-c2fcfe05d68e.png)

１－２．
BaseDNの値を選択した状態で右クリックメニューから[新規組織単位]を選択します。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/138274/8bb189bd-695f-9e02-d9ac-fc22b339a26c.png)

１－３．
名前の欄が必須入力となっているので名前を入力します。
※入力している名前は適当です。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/138274/831ea630-edff-d792-43a4-4107407fe793.png)

１－４．
↓の画面が表示されれば、とりあえずレコードが登録されます。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/138274/119cd528-5265-b62f-62e7-0377a5171731.png)

![image.png](https://qiita-image-store.s3.amazonaws.com/0/138274/2f64b6cf-d73f-6993-0d7f-41dd91698f7e.png)

２．OpenAM管理コンソール用 ユーザースキーマファイルを準備
OpenAMが標準でスキーマファイルを用意しているのでOpenAMサーバにログインして、
スキーマファイルをダウンロードします。
※私が作成したサーバはLinuxなのでパスがそんな感じになっています。

```bash:スキーマファイル1
/var/lib/tomcat/webapps/openam/WEB-INF/template/ldif/opendj/opendj_user_schema.ldif
```
```bash:スキーマファイル2
/var/lib/tomcat/webapps/openam/WEB-INF/template/openfm/fam_sds_schema.ldif
```

３．LDIFファイルをインポートしてスキーマを拡張します。
前の手順でダウンロードしてきたスキーマ拡張用のLDIFファイルをOpenDJサーバに配置した上でLDIFファイルのインポートを実施します。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/138274/65c5b627-9278-9abe-16cd-8f31a2376d4f.png)

スキーマの拡張は制御パネルではできないので、下記のようにコマンドで拡張処理を実施します。
※下記はデスクトップにOpenDJのプログラム一式を配置している例です。商用環境では決して参考になさらずで…

```powershell:スキーマ拡張のための準備
cd C:\Users\Administrator\Desktop\opendj\bat
ls
```
lsコマンドを実行すると↓のような形でOpenDj用のコマンド一式(batファイル)が保存されています。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/138274/0b5b10ba-605d-6430-7f71-38e37436218c.png)



リストの中にldapmodifyコマンドがあることを確認し、以下のコマンドを実行します。

```powershell:スキーマ拡張コマンド１
.\ldapmodify.bat --bindDN "cn=Directory Manager" --bindPassword 【パスワード】 --filename 【opendj_user_schema.ldifファイルを指定】
```

```powershell:スキーマ拡張コマンド２
.\ldapmodify.bat --bindDN "cn=Directory Manager" --bindPassword 【パスワード】 --filename【fam_sds_schema.ldifファイルを指定】
```

実行するとそれぞれ↓のような結果が出力されます。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/138274/46ca8805-db82-5931-f8fa-3c52a66fbeb3.png)

![image.png](https://qiita-image-store.s3.amazonaws.com/0/138274/2691f9e6-4df2-25ef-c155-de947f86e8b6.png)

オブジェクトクラスに「inetUser」とかinet系の属性が追加されていれば良いです。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/138274/242b964c-002b-7530-fdab-2f0d5e9d776e.png)

これでOpenAM側でOpenDJとの連携設定を行い、OpenAMの管理コンソールへOpenDJ上で作成したユーザーアカウントにてログインできるようになることを確認します。