付録D.5 統合ユーザ管理の設定
(1) 統合ユーザ管理機能の設定の流れ
統合ユーザ管理機能の設定手順を次に示します。
- ユーザ管理方法を検討し,同一の認証ポリシーを適用する範囲(レルム)を決定します。
ユーザを管理する単位を検討し,対応するレルム名を決定します。レルム名の決定については,マニュアル「Cosminexus システム構築ガイド」を参照してください。
- LDAPディレクトリサーバを設定します。
シングルサインオンを使用する場合には,シングルサインオン用のユーザ情報をLDAPディレクトリサーバで管理しますので,LDAPディレクトリサーバが必要です。LDAPディレクトリサーバの設定については,マニュアル「Cosminexus システム構築ガイド」を参照してください。
シングルサインオンを使用しないでRDB(HiRDBやOracleなど)の提供するユーザ認証だけを使用する場合は,この手順は不要です。
- ユーザ認証に使用するユーザ情報をLDAPディレクトリサーバ,またはRDBに登録します。
LDAPディレクトリサーバへのユーザ情報の登録については,「(2) ユーザ情報リポジトリへのユーザの登録」を参照してください。なお,Cosminexusでは,LDAPディレクトリサーバに格納するユーザ管理リポジトリの標準的なDIT構造を規定しています。リポジトリの構造については,マニュアル「Cosminexus 機能解説」の統合ユーザ管理で使用するユーザ情報の管理方法に関する説明を参照してください。
RDBへのユーザ情報の登録については,使用しているRDBのマニュアルを参照してください。
- シングルサインオンを使用する場合で,シングルサインオン用のユーザ情報を暗号化したいときは,ユーザ情報を暗号化または復号化するための暗号鍵ファイルを作成します。
暗号鍵ファイルの作成については,マニュアル「Cosminexus システム構築ガイド」を参照してください。
シングルサインオンを使用しない場合,またはユーザ情報を暗号化しない場合,この手順は不要です。
- シングルサインオンを使用する場合は,シングルサインオン用のユーザ情報をLDAPディレクトリサーバに登録します。
LDAPディレクトリサーバへのシングルサインオン用のユーザ情報の登録については,「(4) シングルサインオン情報リポジトリへのシングルサインオン用のユーザ情報の登録」を参照してください。なお,Cosminexusでは,LDAPディレクトリサーバに格納するシングルサインオン用のユーザ管理リポジトリの標準的なDIT構造を規定しています。リポジトリの構造については,マニュアル「Cosminexus 機能解説」の統合ユーザ管理で使用するユーザ情報の管理方法に関する説明を参照してください。
シングルサインオンを使用しない場合,この手順は不要です。
- コンフィグレーションファイルを作成します。
作成するファイルは,次の2種類です。
- jaas.conf(JAASのコンフィグレーションファイル)
- ua.conf(統合ユーザ管理のコンフィグレーションファイル)
コンフィグレーションファイルの作成については,マニュアル「Cosminexus システム構築ガイド」を参照してください。
- JavaVMのプロパティを設定します。
JavaVMのプロパティの設定については,マニュアル「Cosminexus システム構築ガイド」を参照してください。
- 統合ユーザ管理で使用するEARファイルをデプロイします。
ファイルのデプロイについては,マニュアル「Cosminexus システム構築ガイド」を参照してください。
- 必要に応じて,統合ユーザ管理で使用する情報のバックアップを取ります。
LDAPディレクトリサーバのリポジトリのバックアップとリストアは,LDAPディレクトリサービスが提供するコマンド,またはディレクトリゲートウェイで操作します。詳細については,LDAPディレクトリサーバのマニュアルを参照してください。
jaas.conf,ua.conf,および暗号鍵ファイルのバックアップも取るようにしてください。
- 参考
- 統合ユーザ管理では,セッションフェイルオーバ機能を使用することで,ログイン状態を別のJ2EEサーバに引き継ぐことができます。セッションフェイルオーバ機能を使用するためのセッションフェイルオーバ用フィルタの設定は,統合ユーザ管理機能を使用する場合と使用しない場合で異なります。設定方法については,マニュアル「Cosminexus システム構築ガイド」を参照してください。
(2) ユーザ情報リポジトリへのユーザの登録
リポジトリ管理でユーザ情報を登録します。リポジトリ管理では,ユーザ情報リポジトリとして使用するLDAPディレクトリサーバに対して次の操作ができます。
- LDAPディレクトリサーバへの接続情報(バインド情報)の設定
- レルムの作成,および削除
- ユーザエントリのスキーマ定義
- ユーザエントリの作成,削除,および編集
リポジトリ管理での操作は,LDAPディレクトリサーバを使用していることが前提です。そのため,ユーザ管理を構築するために必要なスキーマ定義を含むLDAPディレクトリサーバの設定は事前に行っておいてください。LDAPディレクトリサーバの設定方法については,マニュアル「Cosminexus システム構築ガイド」を参照してください。
「リポジトリ管理」を使用してユーザ情報リポジトリへユーザ情報を登録するための手順を次に示します。
- バインド情報を設定します。
リポジトリ管理の[バインド情報の設定]画面で,LDAPディレクトリサーバへ接続するための情報を設定します。
- レルムを作成します。
レルム管理の[レルムの作成]画面で,LDAPディレクトリサーバにレルムを作成します。
- ユーザエントリのスキーマを定義します。
レルム管理の[ユーザエントリのスキーマ定義]画面で,レルムで管理するユーザエントリの属性と,ユーザのパスワードを保存するときの暗号化形式を設定します。
- ユーザエントリを作成します。
レルム管理の[ユーザエントリの作成]画面で,レルムにユーザエントリを作成します。
なお,LDAPディレクトリサーバとしてActive Directoryを使用して,ユーザの登録,ユーザ情報の更新,およびリポジトリ情報のパスワードの変更をする場合の方法については,「(3) Active Directoryを使用する場合の設定」を参照してください。
運用管理エージェントとManagement Serverの起動および停止,Management Serverのログインおよびログアウトの操作については,「付録F J2EEアプリケーションを実行するシステムの起動と停止(Windowsの場合)」,または「付録G J2EEアプリケーションを実行するシステムの起動と停止(UNIXの場合)」を参照してください。
(3) Active Directoryを使用する場合の設定
統合ユーザ管理GUIを使用する場合の,SSLを使用して接続するための証明書の登録,およびActive Directory固有の環境設定の方法を次に示します。
なお,バインド情報の設定,ユーザエントリのスキーマ定義,ユーザエントリの作成は,リポジトリ管理にある画面を使用します。
(a) 証明書の登録
Management ServerとActive Directory間の通信でSSLを使用するための証明書を登録します。証明書の登録方法を次に示します。
- 作成したデジタル証明書を,Active Directoryがインストールされているサーバ(LDAPサーバ)に登録します。
デジタル証明書の作成,登録方法については,Active Directoryのドキュメントを参照してください。
- Management Serverに認証局(CA)の証明書を登録します。
認証局の証明書のManagement Serverへの登録は,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で証明書を登録する際にManagement Serverを起動していた場合は,Management Serverを再起動してください。
(b) バインド情報の設定
リポジトリ管理にある[バインド情報の設定]画面で必要な設定を次に示します。
- 「プロトコル」に「ldaps」を指定します。
- 「ポート」に「636」を指定します。
- [Active Directoryに接続する。]チェックボックスをチェックします。
(c) ユーザエントリのスキーマ定義
リポジトリ管理にある[ユーザエントリのスキーマ定義]画面で必要な設定を次に示します。
- デフォルトのオブジェクトクラス「inetorgperson」は削除して,オブジェクトクラスに「user」を追加します。
- [必須属性の設定]の「ユーザID」に「cn」,「パスワード」に「unicodePwd」を指定します。
- [任意属性の設定]で次の二つの属性を追加します。
sAMAccountName
userAccountControl
- 注意
- [必須属性の設定]の「パスワード」に「userPassword」を指定した場合,SSLを使用しないでパスワードを変更できますが,Active Directoryで管理するユーザのパスワードは変更できません。
- [必須属性の設定]の「パスワード」に「unicodePwd」を指定した場合,「暗号化形式」の指定は無効になります。
- Active Directoryでは,既存ユーザのオブジェクトクラスの変更はサポートしていません。[バインド情報の設定]画面で[Active Directoryに接続する。]チェックボックスにチェックして,[ユーザエントリのスキーマ定義]画面で新規にオブジェクトクラス「user」を追加したあとで,既存のユーザエントリを更新しても,ユーザエントリ作成時のオブジェクトクラスが適用されます。
(d) ユーザエントリの作成
リポジトリ管理にある任意のレルム名の[ユーザエントリの作成]画面で設定します。
一つのユーザエントリを作成するためには,次に示す二つの設定が必要です。
- 「属性名」で「sAMAccountName」を選択して,「属性値」にセキュリティアカウントマネージャ(SAM)のアカウント名を指定します。なお,通常,「属性値」にはユーザIDと同じ値を指定します。
- 「属性名」で「userAccountControl」を選択して,「属性値」にユーザアカウントのプロパティフラグを指定します。一般ユーザのユーザエントリを作成する場合は「512」を指定します。
- 注意
- Active Directoryがインストールされているサーバのセキュリティポリシーで,パスワードの長さが1文字以上に設定されている場合,「userAccountControl」の「属性値」に「512」を指定すると,ユーザを作成できません。この場合,次のどちらかの対処をして,ユーザエントリを作成してください。
- セキュリティポリシーのパスワードの長さを0文字以上に変更して,「userAccountControl」の「属性値」に「512」を指定する。
- セキュリティポリシーのパスワードの長さの設定は変更しないで,「userAccountControl」の「属性値」に「544」を指定する。
(4) シングルサインオン情報リポジトリへのシングルサインオン用のユーザ情報の登録
リポジトリ管理でユーザ情報を登録します。リポジトリ管理では,シングルサインオン情報リポジトリとして使用するLDAPディレクトリサーバに対して次の操作ができます。
- シングルサインオン用の暗号鍵ファイルの設定
- シングルサインオン用のレルムの作成,および削除
- シングルサインオン用のユーザエントリのスキーマ定義
- シングルサインオン用のユーザエントリの作成,削除,および編集
なお,ここでは,ユーザ情報リポジトリにユーザ情報を登録していることを前提に説明します。ユーザ情報リポジトリへのユーザ情報の登録については,「(2) ユーザ情報リポジトリへのユーザの登録」を参照してください。
「リポジトリ管理」を使用してシングルサインオン情報リポジトリへシングルサインオン用のユーザ情報を登録するための手順を次に示します。
- 暗号鍵ファイルを適用します(任意)。
レルム管理の[暗号鍵ファイルの設定]画面で,シングルサインオン用のユーザ情報を暗号化,復号化するための暗号鍵ファイルを適用します。なお,暗号鍵ファイルはあらかじめ作成し,システム管理者が安全な方法で統合ユーザ管理機能を使用するJ2EEサーバに配布しておいてください。
- シングルサインオン用のレルムを作成します。
レルム管理の[レルムの作成]画面で,LDAPディレクトリサーバにレルムを作成します。
- シングルサインオン用のユーザエントリのスキーマを定義します。
レルム管理の[ユーザエントリのスキーマ定義(シングルサインオン用)]画面で,レルムで管理するユーザエントリの属性と,ユーザのパスワードを保存するときの暗号化形式を設定します。
- シングルサインオン用のユーザエントリを作成します。
レルム管理の[ユーザエントリの作成(シングルサインオン用)]画面で,レルムにユーザエントリを作成します。
運用管理エージェントとManagement Serverの起動および停止,Management Serverのログインおよびログアウトの操作については,「付録F J2EEアプリケーションを実行するシステムの起動と停止(Windowsの場合)」,または「付録G J2EEアプリケーションを実行するシステムの起動と停止(UNIXの場合)」を参照してください。