![]() | |
Sun™ Identity Manager 8.0 インストール |
付録 B
Identity Manager のデータソースの設定この付録では、次の節で、Identity Manager のデータソースを作成する手順について説明します。
Identity Manager の WebSphere データソースの設定次の情報を使用して Identity Manager の WebSphere データソースを設定します。
Servlet 2.3 データソース
Identity Manager 6.0 のリリース時点では、WEB-INF/web.xml ファイルの配備記述子は Servlet 2.3 を参照します。このため、WebSphere Application Server Version 4 Data Source では Identity Manager Web アプリケーションを使用できなくなりました。
Identity Manager の WebSphere データソースを設定するには、次の手順を使用します。
これらの手順について、次に詳しく説明します。
JDBC プロバイダの設定
WebSphere の管理コンソールを使用して新しい JDBC プロバイダを設定します。
- 左側の区画で「リソース」タブをクリックして、リソースタイプのリストを表示します。
- 「JDBC」、「JDBC プロバイダ」を順にクリックして、設定済み JDBC プロバイダのテーブルを表示します。
- 設定済み JDBC プロバイダのテーブルの上にある「新規作成」ボタンをクリックします。
- JDBC データベースタイプのリストから、プロバイダのタイプと実装タイプを選択します。「名前」と「説明」フィールドを変更します (オプション)。
この例では、Oracle、Oracle JDBC ドライバ、および接続プールのデータソースが使用されます。
「次へ」をクリックします。
- データベースのクラスパス情報を入力します。データベースのクラスパス情報を入力するページの内容は、前の手順で選択した内容によって異なります。
この JDBC プロバイダを使用するデータソースを設定するには、「Identity Manager リポジトリのデータソースの指定」を参照してください。
WebSphere JDBC データソースの設定
WebSphere の管理コンソールを使用して既存の JDBC プロバイダのデータソースを定義します。
認証データの設定
データソースの設定を完了するには、認証データを設定する必要があります。これらの別名には、DBMS への接続に使用される資格が含まれます。
データソースの設定
- 左側の区画で「リソース」>「JDBC プロバイダ」>「既存のプロバイダ名」>「データソース」タブをクリックして、「データソース」ページを表示します。この JDBC プロバイダで使用するために設定されたデータソースのテーブルが右側の区画に表示されます。データソースのテーブルの上にある「新規作成」ボタンをクリックします。
- 表示されるウィザードを使用して、新しいデータソースの一般プロパティーを設定します。「基本データソース情報を入力する」ページで、次の事項に注意してください。
- 「JNDI 名」は、ディレクトリサービス内のデータソースオブジェクトのパスです。この同じ値を、次のように -f 引数として指定する必要があります。
setRepo -tdbms -iinitCtxFac -ffilepath- 「JDBC プロバイダの設定」で作成した「コンポーネント管理認証別名」を選択します。これらは、このデータソースで指定されている DBMS へのアクセスに使用される資格を示します。
このパネルの設定が終了したら、「次へ」をクリックします。「新しい JDBC プロバイダを作成する」ページが表示されます。
- 必要に応じて、このデータソースのデータベース固有のプロパティーを設定します。使用可能なプロパティーの詳細については、オンラインヘルプを参照してください。
「このデータをコンテナ管理パーシスタンス (CMP) で使用する」のチェックマークが外してあることを確認します。Identity Manager では、Enterprise Java Beans (EJB) は使用しません。「次へ」をクリックして、要約ページに移動します。
- 「完了」をクリックして、データソースを保存します。
WebSphere クラスタ内のデータソースの設定
クラスタ化された WebSphere 環境でデータソースを設定するときは、セルレベルで設定します。これにより、セル内のすべてのノードからそのデータソースにアクセスできます。
この設定を行うには、-D $propertiesFilePath オプションを使用します。この場合、$propertiesFilePath は次のようになります。
java.naming.provider.url=iiop://localhost:jndi_port/
または
-u iiop://localhost:jndi_port/
指定する JNDI ポートを確認するには、WebSphere の設定を調べます。
Identity Manager リポジトリのデータソースの指定
新しく作成したデータソースをリポジトリに指定するには、次の手順を使用します。
- インストールされた Identity Manager を指すように WSHOME 環境変数を設定します。次に例を示します。
export WSHOME=$WAS_HOME/installedApps/idm.ear/idm.war
$WAS_HOME は、/usr/WebSphere/AppServer などの WebSphere ホームディレクトリです。
- JAVA_HOME 環境変数が正しく設定されていることを確認します。次に例を示します。
export JAVA_HOME=$WAS_HOME/java
- Java 実行可能ファイルがパスに含まれていることを確認します。次に例を示します。
export PATH=$JAVA_HOME/bin;$PATH
- クラスパスが WebSphere のプロパティーディレクトリを指していることを確認します。次に例を示します。
export CLASSPATH=$WAS_HOME/properties
- ディレクトリを $WSHOME/bin ディレクトリに変更します。
- (SQLServer の場合のみ): JTA サポートをインストールします。
- SQLServer JTA ディレクトリにある sqljdbc.dll ファイルを、SQLServer データベースサーバーの SQL_SERVER_ROOT/binn ディレクトリにコピーします。
注
SQLServer JTA ディレクトリのデフォルトの場所は C:¥Program Files¥Microsoft SQL Server 2000 Driver for JDBC¥SQLServer JTA です。SQL_SERVER_ROOT/binn のデフォルトの場所は C:¥Program Files¥Microsoft SQL Server¥MSSQL¥Binn です。
- データベースサーバーから、ISQL または OSQL ユーティリティーを使用して instjdbc.sql スクリプトを実行します。これも SQLServer JTA ディレクトリにあります。次の例は、これらのユーティリティーの使用法を示します。
isql -Usa -psa_password -Sserver_name
-ilocation¥instjdbc.sql
osql -E -ilocation¥instjdbc.sql- 元に戻す必要がある場合は、既存の ServerRepository.xml ファイルのコピーをアーカイブします。デフォルトでは、このファイルは $WSHOME/WEB-INF にあります。
- リポジトリに新しい場所を指定します。たとえば、次のようにします。
lh -Djava.ext.dirs="$JAVA_HOME/jre/lib:$JAVA_HOME/jre/lib/ext: $WASHOME/lib:$WASHOME/:$WASHOME/runtimes" setRepo
-Uusername
-Ppassword
-toracle -icom.ibm.websphere.naming.WsnInitialContextFactory -fDataSourcePath -n -oこの例で、DataSourcePath は、たとえば jdbc/jndiname のようになります。-Djava.ext.dirs オプションにより、WebSphere の lib/ ディレクトリと java/jre/lib/ext/ ディレクトリにあるすべての JAR ファイルが CLASSPATH に追加されます。これは、setRepo コマンドが正常に動作するために必要な処理です。
データソースの設定時に「JNDI 名」フィールドに指定した値と一致するように -f オプションを変更します。このコマンドの詳細については、「setRepo リファレンス」を参照してください。
- RepositoryConfiguration 設定オブジェクトで、connectionPoolDisable 属性を true に設定します。
<RepositoryConfiguration connectionPoolDisable='true'>
この設定により、不必要な警告が WebSphere から SystemOut.log ファイルに送信されなくなります。詳細については、http://www-1.ibm.com/support/docview.wss?uid=swg21121449 を参照してくさい。
- 変更を有効にするために WebSphere を再起動します。これにより、システムも再起動されます。
setRepo コマンドへの追加の JNDI プロパティーの指定
setRepo コマンドには、任意のプロパティーセットを指定できるオプションが用意されています。プロパティーファイルを作成してプロパティーを記述することにより、-D $propertiesFilePath オプションを使用して任意の数の設定を指定できます。これには、JNDI で指定されていないベンダー固有のプロパティーも含まれます。
たとえば、異なる JNDI ポート番号を指定するには、プロパティーファイルに次のような行を記述します。
java.naming.provider.url=iiop://localhost:2909
Identity Managerの WebLogic データソースの設定Identity Manager のリポジトリ設定を、WebLogic データソースを指すように更新するには、次の手順を使用します。ここでは、次の内容について説明します。
WebLogic データソースの作成
この例の手順では、Oracle データベースドライバを使用する場合の設定手順を説明します。作成する個々のエントリは、データベースタイプによって異なります。
接続プールの作成
- WebLogic 管理コンソール (デフォルトでは http://localhost:7001/console/) にログインします。
- ナビゲーション区画 (左側の区画) にあるドメインの「サービス」フォルダを展開します。
- 「JDBC」フォルダを展開します。
- 「接続プール」フォルダを展開します。
- 右側の区画 (JDBC 接続プール) で、「新しい JDBC 接続プールのコンフィグレーション」をクリックします。
- 「データベース タイプ」で「Oracle」を選択します。適切なタイプであればどれでも使用できます。ただし、それらを使用するには、ドライバがインストールされている必要があります。
- 「データベースドライバ」選択ボックスで、適切なドライバを選択します。この例では、「Oracle's Driver (Thin)」を選択します。
- 「続行」をクリックします。
- JDBC ドライバを次のように設定します。
- 「続行」をクリックします。
- このページでデータベース接続をテストするか、または「この手順の省略」をクリックします。インストール環境によっては、さらにプロパティーの追加が必要になる場合があります。ターゲットデータベースの管理者ガイドを参照してください。
注
次の「接続プールの設定」は、選択したドライバによって異なります。次に示すオプションは、Oracle ドライバの場合のオプションであり、別の種類のドライバを選択する場合は該当しないことがあります。
この操作を続けるには、JDBC ドライバがインストールされている必要があります。ターゲットドライバで定められている手順に従ってください。
- 「作成とデプロイ」をクリックします。
- この接続プールの接続設定を設定します。
接続設定の例:
初期容量: 20
最大容量: 100
増加容量: 10
Statement キャッシュ タイプ: LRU
Statement キャッシュ サイズ: 20
JDBC データソースの作成
- ナビゲーション区画 (左側の区画) にあるドメインの「サービス」フォルダを展開します。
- 「JDBC」フォルダを展開します。
- 「データソース」フォルダを展開します。
- 右側の区画 (JDBC データソース) で、「新しい JDBC データソースの設定」をクリックします。
- JDBC データソースを次のように設定します。
- 「続行」をクリックします。
- パート A から「接続プール」を選択します。これにより、アプリケーションは配下の接続プールから接続を取得できます。
- 「続行」をクリックします。
- 新しいデータソースを配備するサーバーを選択します。
- 「作成」をクリックします。
Identity Manager リポジトリのデータソースの指定
- インストールされた Identity Manager を指すように WSHOME 環境変数を設定します。次に例を示します。
set WSHOME=C:¥bea¥user_projects¥domains¥mydomain¥applications¥idm
- JAVA_HOME 環境変数が正しく設定されていることを確認します。次に例を示します。
set JAVA_HOME=C:¥j2sdk1.5
- 選択したデータベースドライバが WebLogic Server 用にインストールされていることを確認します。詳細については、WebLogic のマニュアルを参照してください。この例では、Oracle のドライバおよび classes12.jar は次のディレクトリにインストールされています。
WebLogicHome¥server¥lib
- CLASSPATH に weblogic.jar を含めます。Windows の場合、次のように入力します。
set CLASSPATH=%CLASSPATH%;WeblogicHome¥server¥lib¥weblogic.jar
たとえば、次のようにします。
set CLASSPATH=%CLASSPATH%;c:¥bea¥weblogic81¥server¥lib¥weblogic.jar
- ディレクトリを %WSHOME ディレクトリに変更します。
- バックアップの作成後、j2ee.jar ファイルを WEB-INF¥lib¥ から削除します。
- ディレクトリを %WSHOME¥bin ディレクトリに変更します。
- リポジトリに新しい場所を指定します。たとえば、次のようにします。
lh setRepo -v -tOracle -iweblogic.jndi.WLInitialContextFactory -fDatasourceName -u"t3:Server:Port" -U"Username" -P"Password"
たとえば、次のようにします。
lh setRepo -v -tOracle -iweblogic.jndi.WLInitialContextFactory -fMyOraDataSource -u"t3://localhost:7001/" -U"weblogic" -P"weblogic"
- エラーが報告されなかった場合は、変更を有効にするために WebLogic を再起動します。これにより、Identity Manager システムも再起動されます。
Identity Manager の Sun Application Server データソースの設定データソースの作成および設定については、Sun Application Server のマニュアルを参照してください。
注
この手順では、環境変数 WSHOME (または同等の Java システムプロパティー waveset.home) に Identity Manager Web アプリケーションが配備されている場所へのパスが含まれている必要があります。
Application Server データソースをリポジトリに指定するには、次の手順を使用します。
- j2ee.jar ファイルを $WSHOME/WEB-INF/lib ディレクトリから削除します。このファイルを削除しないと、Application Server とともに出荷される j2ee.jar との競合が発生します。
- デフォルトのホスト名とポートを使用していない場合は、JAVA_OPTS に次のフラグを追加する必要があります。
-Dorg.omg.CORBA.ORBInitialHost=Hostname -Dorg.omg.CORBA.ORBInitialPort=Port
Hostname と Port のデフォルト値は、それぞれ localhost と 3700 です。
- 次の Application Server JAR ファイルを、この順序で CLASSPATH に含めるように設定します。
SAS_INSTALL_DIR/lib/appserv-admin.jar
SAS_INSTALL_DIR/lib/appserv-rt.jar
SAS_IMQ_DIR/lib/imq.jar
SAS_INSTALL_DIR/lib/j2ee.jar
- JDBC 接続に必要な JAR ファイルを CLASSPATH に含めるように設定します。たとえば、次のようにします。
DataDirect JDBC ドライバ (Oracle)
- ディレクトリを $WSHOME/WEB-INF に変更します。
- Sun Application Server とともに出荷される Data Direct JDBC Driver for Oracle 以外のドライバを使用している場合は、次のコマンドを使用してデータソースに接続します。
lh setRepo -v -tType -iInitContextFactory -fDataSourcePath -uiiop://hostname:port
たとえば、次のようにします。
lh setRepo -v -tOracle -icom.sun.enterprise.naming.SerialInitContextFactory -fjdbc/idm
-uiiop://localhost:3700
注
Data Direct JDBC Driver for Oracle を使用しているときに、このコマンドを入力すると、次の例外が発生して操作が失敗します。
java.sql.SQLException: [sunm][Oracle JDBC Driver]This driver is locked for use with embedded applications.
- Sun Application Server とともに出荷される Data Direct JDBC Driver for Oracle は、組み込みアプリケーションでのみ動作するように「ロック」されています。つまり、ドライバは Web コンテナ内でのみ動作します。したがって、lh コマンドを使用するには、別個の接続を確立する必要があります。
Identity Manager の JBoss データソースの設定データソースの作成および設定の詳細については、JBoss アプリケーションサーバーのマニュアルを参照してください。
データソースの作成
- データベースタイプの JDBC ドライバクラスを、アプリケーションサーバーの lib ディレクトリ (JBossInstallDir¥server¥default¥lib など) にコピーします。
- データソース設定ファイルを作成します。これらのファイルは、末尾が -ds.xml となります。ファイルの例が JBossInstallDir¥docs¥examples¥jca にあります。ファイルは、ローカルトランザクションのデータソースを設定します。
- 設定ファイルを、アプリケーションサーバーの JBossInstallDir¥server¥default¥deploy ディレクトリにコピーします。
Identity Manager のデータソースの指定
Identity Manager の Oracle Application Server データソースの設定データソースの設定は、すべて Oracle Enterprise Manager 10g Application Server 制御コンソールで実行できます。Application Server 制御コンソールのオンラインヘルプには、データソースの設定に役立つ情報が記載されています。
Identity Manager のリポジトリ設定を、Oracle Application Server データソースを指すように更新するには、次の手順を使用します。ここでは、次の内容について説明します。
Oracle Application Server データソースの作成
この例の手順では、Oracle データベースドライバを使用する場合の設定手順を説明します。作成する個々のエントリは、データベースタイプによって異なります。
接続プールの作成
- Oracle 10g Application Server 制御コンソール (デフォルトでは http://localhost:Port/em) にログインします。
- 「クラスタトポロジ」ページで、「アプリケーションサーバーによる表示」を選択します。
- 「OC4J ホーム」リンクをクリックし、「OC4J: ホーム」ページで「管理」リンクをクリックします。
- 「サービス」>「JDBC リソース」の「タスクに移動」アイコンをクリックします (データソースおよび接続プールの作成、削除、または表示)。
- 「接続プール」で、「作成」ボタンをクリックします。
- 「アプリケーション」ドロップダウンリストから、idm を選択します。
- 「新しい接続プール」ラジオボタンを選択して、「続行」をクリックします。
- 「接続プールの作成」ページで、次のように新しい接続プールを作成します。
- 「テスト接続」ボタンをクリックして、接続を確認します。
- インストール環境によっては、「属性」および「プロパティー」ページでプロパティーの追加が必要になる場合があります。ターゲットデータベースの管理者ガイドを参照してください。
- 「完了」ボタンをクリックします。
JDBC データソースの作成
- 「JDBC リソース」ページの「データソース」で、「作成」ボタンをクリックします。
- 「アプリケーション」ドロップダウンリストから、idm を選択します。
- 「管理データソース」ラジオボタンを選択します。
- 「続行」ボタンをクリックします。
- 「データソースの作成 - 管理データソース」ページで、次のように JDBC データソースを設定します。
接続プール設定ですでに指定された情報を上書きする必要がないかぎり、「クレデンシャル」セクションにユーザー名とクリアテキストパスワードを入力する必要はありません。
- 「完了」ボタンをクリックします。
Identity Manager リポジトリのデータソースの指定
- インストールされた Identity Manager を指すように WSHOME 環境変数を設定します。次に例を示します。
set WSHOME=C:¥product¥10.1.3.1¥OracleAS_1¥j2ee¥home¥applications¥idm
- JAVA_HOME 環境変数が正しく設定されていることを確認します。次に例を示します。
set JAVA_HOME=C:¥product¥10.1.3.1¥OracleAS_1¥jdk
- 選択したデータベースドライバが Oracle Application Server 用にインストールされていることを確認します。これらのファイルを含むクラスパスを設定します。詳細については、Oracle Application Server のマニュアルを参照してください。
- CLASSPATH に OLITE40.JAR を含めます。Windows の場合、次の例のように入力します。
set CLASSPATH=%CLASSPATH%;C:¥product¥10.1.3.1¥OracleAS_1¥MOBILE¥Sdk¥bin¥OLITE40.JAR;
- ディレクトリを %WSHOME% ディレクトリに変更します。
- WEB-INF¥ServerRepository.xml ファイルのバックアップを作成し、このディレクトリ以外の場所に移動します。これは、元の Identity Manager インストールからの直接の接続設定です。
- ディレクトリを %WSHOME%¥bin ディレクトリに変更します。
- Identity Manager の lh コマンドを使用して、リポジトリに新しい場所を指定します。たとえば、次のようにします。
lh setRepo -v -tOracle -icom.evermind.server.ApplicationClientInitialContextFactory -fDatasourceName -n -o ServerRepository.xml
- エラーが報告されなかった場合は、変更を有効にするために Oracle Application Server を再起動します。これにより、Identity Manager システムも再起動されます。