Cosminexus システム構築ガイド
![[目次]](FIGURE/CONTENT.GIF)
![[用語]](FIGURE/GLOSS.GIF)
![[索引]](FIGURE/INDEX.GIF)
![[前へ]](FIGURE/FRONT.GIF)
LDAPディレクトリサーバとしてActive Directoryを使用する場合の設定方法について説明します。
統合ユーザ管理フレームワークのライブラリを使用して,ユーザ情報リポジトリへのユーザの登録,ユーザ情報の更新(ユーザのパスワード変更を含む)を行う場合,SSLを使用して接続するための証明書の登録,およびActive Directory固有の環境設定が必要です。
SSLを使用して接続するための証明書の登録,およびActive Directory固有の環境設定の方法を次に示します。
- ポイント
- Active Directoryで管理するユーザは,ほかのLDAPディレクトリサーバで管理するユーザと,オブジェクトクラス,属性が大きく異なります。統合ユーザ管理フレームワークのライブラリを使用する場合には,オブジェクトクラスに「user」を使用します,その「user」を作成する場合には,「cn」,「unicodePwd」,「sAMAccountName」,および「userAccountControl」の四つの属性を指定します。
- 「sAMAccountName」には,セキュリティアカウントマネージャ(SAM)のアカウント名を指定します。なお,通常,アカウント名はユーザIDと同じ値を指定します。
- 「userAccountControl」には,ユーザアカウントのプロパティフラグを指定します。一般ユーザのユーザエントリを作成する場合は「512」を指定します。ただし,Active Directoryがインストールされているサーバのセキュリティポリシーで,パスワードの長さが1文字以上に設定されている場合,「userAccountControl」に「512」を指定すると,ユーザを作成できません。この場合は,次のどちらかの対処をして,ユーザエントリを作成してください。
- セキュリティポリシーのパスワードの長さを0文字以上に変更して,「userAccountControl」に「512」を指定する。
- セキュリティポリシーのパスワードの長さの設定を変更しないで,「userAccountControl」に「544」を指定する。
- <この項の構成>
- (1) 証明書の登録
- (2) jaas.confの設定
- (3) ua.confの設定
- (4) 注意事項
(1) 証明書の登録
J2EEサーバとActive Directory間の通信でSSLを使用するための証明書を登録します。証明書の登録方法を次に示します。
- 作成したデジタル証明書を,Active Directoryがインストールされているサーバ(LDAPサーバ)に登録します。
デジタル証明書の作成,登録方法については,Active Directoryのドキュメントを参照してください。
- 認証局(CA)の証明書を,J2EEサーバに登録します。
認証局の証明書のJ2EEサーバへの登録は,Cosminexus Developer's Kit for Javaに付属するkeytoolを使用して実行できます。keytoolの詳細については,Java 2 SDK, Standard Editionのドキュメントを参照してください。keytoolの実行例を次に示します。なお,表記の都合上,複数行にわたっていますが,実際は一行で記述します。
Windowsの場合
keytool -import -alias cakey -file C:\temp\cacer.cer -trustcacerts -keystore
"<Cosminexusのインストールディレクトリ>\jdk\jre\lib\security\cacerts"
UNIXの場合
/opt/Cosminexus/jdk/bin/keytool -import -alias cakey -file /tmp/cacer.cer
-trustcacerts -keystore /opt/Cosminexus/jdk/jre/lib/security/cacerts
なお,keytoolで証明書を登録する際にJ2EEサーバを起動していた場合は,J2EEサーバを再起動してください。
(2) jaas.confの設定
jaas.confファイルの設定方法を次に示します。
- ログインモジュールとして,「WebPasswordLDAPLoginModule」を指定します。
- WebPasswordLDAPLoginModuleのオプションに「ldap.w」を指定します。
(3) ua.confの設定
ua.confの設定方法を次に示します。
- 接続先のLDAPディレクトリサーバのURLのプロトコルに「ldaps」を指定します。指定例を次に示します。なお,ポート番号は省略できます。
java.naming.provider.url.0=ldaps://localhost:636
- ユーザのログインIDおよびパスワードを表す属性値を次のとおり指定します。
com.cosminexus.admin.auth.ldap.attr.userid.0=cn
com.cosminexus.admin.auth.ldap.attr.password.0=unicodePwd
- 接続先のLDAPディレクトリサーバの種類を次のとおり指定します。
com.cosminexus.admin.auth.ldap.directory.kind.0=AD
注意事項を次に示します。
- ua.confでユーザのパスワードを表す属性値として「unicodePwd」を指定した場合,パスワード形式オプション「password.encrypt」および「password.encrypt.ex」の設定は無効になります。
- Active Directoryでは,既存ユーザエントリのオブジェクトクラスの変更はサポートしていません。ua.confに「com.cosminexus.admin.auth.ldap.directory.kind.0=AD」を指定した場合,LdapUserDataManagerクラスのコンストラクタで新規にオブジェクトを追加したあとで,既存のユーザエントリを更新しても,ユーザエントリ作成時のオブジェクトクラスが適用されます。
All Rights Reserved. Copyright (C) 2006, 2007, Hitachi, Ltd.