3.3 JDBC用ドライバのインストール

3.3.1 ドライバのインストール

メタディレクトリエンジンをインストールすると同時に、JDBC用ドライバを(他のIdentity Managerドライバと共に)インストールできます。『Identity Manager 3.0インストールガイド』を参照してください。

メタディレクトリエンジンをインストールした後で、ドライバを個別にインストールすることもできます。

Windowsへのインストール

  1. Identity Manager 3のダウンロードイメージまたはCDからインストールプログラム(\nt\install.exe)を実行します。

    ダウンロードイメージは、ノベル用ダウンロードから入手できます。

  2. [ようこそ]ダイアログボックスで、[次へ]をクリックして、使用許諾契約に同意します。

  3. 最初の[Identity Managerの概要]ダイアログボックスで、情報を確認して、[次へ]をクリックします。

    このダイアログボックスには、次の情報が表示されます。

    • メタディレクトリサーバ
    • 接続先サーバシステム
  4. 2番目の[Identity Managerの概要]ダイアログボックスで、情報を確認して、[次へ]をクリックします。

    このダイアログボックスには、次の情報が表示されます。

    • Webベースの管理サーバ
    • Identity Managerユーティリティ
  5. ローカルにインストールしている場合は、[メタディレクトリサーバ]だけを選択して、[次へ]をクリックします。

    [メタディレクトリサーバ]チェックボックス

    リモート(リモートローダ)インストールしている場合は、[接続システム]を選択し、『Novell Identity Manager 3.0管理ガイド』の「リモートローダの設定」および「接続システムの設定」を参照してください。

    リモートローダをインストールしている場合、ポリシー(およびポリシーが参照するバイナリ)はローカルで実行されますが、ドライバシムバイナリはリモートで実行されます。メタディレクトリサーバをインストールする場合は、すべてのバイナリおよびポリシーがローカルで実行されます。

  6. エンジンインストールのドライバを選択するダイアログボックスで、[JDBC]だけを選択し、[次へ]をクリックします。

    [区切りテキスト]チェックボックス
  7. [Identity Managerアップグレードの警告]ダイアログボックスで、[OK]をクリックします。

  8. [概要]ダイアログボックスで、選択したオプションを確認して、[終了]をクリックします。

  9. [インストールが完了しました]ダイアログボックスで、[閉じる]をクリックします。

インストール後、 サンプル環境設定ファイルのインポートにある説明に従ってドライバを設定します。

NetWareへのインストール

  1. NetWare®サーバで、Identity Manager CDをドライブに挿入して、CDをボリュームとしてマウントします。

    CDをお持ちでない場合は、Identity_Manager_3_NW_Win.isoをダウンロードしてCDを作成します。ダウンロードイメージは、ノベル用ダウンロードから入手できます。

    CDをマウントするには、「m cdrom」と入力します。

  2. (条件付き)グラフィカルユーティリティがロードされない場合は、「startx」と入力してユーティリティをロードします。

  3. グラフィカルユーティリティで、[Novell]アイコンをクリックして、[インストール]をクリックします。

  4. [インストール済みの製品]ダイアログボックスで、[追加]をクリックします。

  5. [ソースパス]ダイアログボックスで、product.niファイルを参照して選択します。

    [ソースパス]ダイアログボックス
    1. 以前にマウントしたCDボリューム(IDM_3_0_NW_WIN)を参照して展開します。

    2. nwディレクトリを展開し、product.niを選択して、[OK]を2回クリックします。

  6. [Novell Identity Manager 3.0のインストールへようこそ]ダイアログボックスで、[次へ]をクリックして、使用許諾契約に同意します。

  7. 2つの[概要]ダイアログボックスを表示して、[次へ]をクリックします。

  8. [Identity Managerのインストール]ダイアログボックスで、[メタディレクトリサーバ]だけを選択します。

    [メタディレクトリサーバ]オプション

    次の項目を選択解除します。

    • Identity Manager Webコンポーネント
    • ユーティリティ
  9. [次へ]をクリックします。

  10. エンジンインストールのドライバを選択するダイアログボックスで、[JDBC]だけを選択します。

    [JDBC]オプション

    次の項目を選択解除します。

    • メタディレクトリエンジン
    • 区切りテキスト以外のすべてのドライバ
  11. [次へ]をクリックします。

  12. [Identity Managerアップグレードの警告]ダイアログボックスで、[OK]をクリックします。

    このダイアログボックスで、90日以内にドライバのライセンスを有効にすることを促されます。

  13. [概要]ページで、選択したオプションを確認して、[終了]をクリックします。

  14. [閉じる]をクリックします。

インストールの後、以下を行います。

LinuxまたはSolarisへのインストール

デフォルトでは、JDBC用Identity Managerドライバは、メタディレクトリエンジンをインストールするときにインストールされます。この節には、メタディレクトリエンジンのインストール時にドライバがインストールされなかった場合のドライバのインストール方法が記載されています。

インストールプログラムを進めていくときに、「previous」と入力すれば前のセクション(画面)に戻ることができます。

  1. 端末セッションで、rootとしてログインします。

  2. Identity Manager CDをドライブに挿入してマウントします。

    CDをお持ちでない場合は、Identity_Manager_3_Linux.isoをダウンロードしてCDを作成します。ダウンロードイメージは、ノベル用ダウンロードから入手できます。

    通常、CDは自動的にマウントされます。次の表は、CDを手動でマウントする例を示しています。

    プラットフォーム

    入力するコマンド

    AIX

    mount /mnt/cdrom、次に<Enter>キーを押す

    Red Hat*

    mount /mnt/cdrom、次に<Enter>キーを押す

    Solaris

    mount /cdrom、次に<Enter>キーを押す

    SUSE®

    mount /media /cdrom、次に<Enter>キーを押す

  3. setupディレクトリに移動します。

    プラットフォーム

    パス

    AIX

    /mnt/cdrom/setup/

    Red Hat

    /mnt/cdrom//setup/

    Solaris

    /cdrom//idm_3/setup/

    SUSE

    /media/cdrom//setup/

  4. ./dirxml_linux.bin」と入力してインストールプログラムを実行します。

  5. [イントロダクション]セクションで、<Enter>キーを押します。

  6. 使用許諾契約に同意します。

    [DO YOU ACCEPT THE TERMS OF THIS LICENSE AGREEMENT (この使用許諾契約書の条項に同意しますか?)]が表示されるまで<Enter>キーを押し、「y」と入力して、<Enter>キーを押します。

    使用許諾契約への同意を求めるプロンプト
  7. [インストールセットの選択]セクションで、[カスタマイズ]オプションを選択します。

    4」と入力して、<Enter>キーを押します。

    [カスタマイズ]オプションの選択を求めるプロンプト
  8. [Choose Product Features (製品の機能の選択)]セクションで、[JDBC]を除くすべての機能を選択解除して、<Enter>キーを押します。

    機能を選択解除するには、その番号を入力します。複数の機能を選択解除するには、各機能の間にカンマを入力します。

    [Choose Product Features (製品の機能の選択)]セクションのオプション
  9. [インストール前の概要]セクションで、オプションを確認します。

    [インストール前の概要]セクション

    前のセクションに戻るには、「previous」と入力して、<Enter>キーを押します。

    続行するには、<Enter>キーを押します。

  10. インストールが完了したら、<Enter>キーを押してインストールを終了します。

インストールの後は、ドライバを設定します。Section 4.0, JDBC用Identity Managerドライバの設定を参照してください。

3.3.2 サンプル環境設定ファイルのインポート

JDBC用Identity Managerドライバを設定するには、ドライバ環境設定ファイルをインポートし、データベースを設定します。データベース環境設定は、SQLスクリプトの実行で構成されます。ドライバを開始する前に、データベースSQLスクリプトを実行してテストすることをお勧めします。

付属している環境設定は、サンプル用です。この環境設定をカスタマイズする前に、まずテスト環境にインストールすることをお勧めします。

サンプルのドライバ環境設定ファイルのインポート: iManager

JDBCv2.xml環境設定ファイルを使用して、サンプルドライバの適切な動作に必要なIdentity Managerオブジェクトを作成および設定します。環境設定ファイルには、カスタマイズ可能なサンプルポリシーも含まれています。

  1. iManagerで、[Identity Managerユーティリティ]>[新規ドライバ]の順に選択します。

  2. ドライバセットを選択し、[次へ]をクリックします。

    このドライバを新しいドライバセットに配置する場合は、ドライバセット名、コンテキスト、および関連サーバを指定します。

  3. [サーバからのドライバ環境設定のインポート(.XMLファイル)]を選択します。

    ドライバ環境設定ファイルは、iManagerの設定時にWebサーバにインストールされます。

  4. ドロップダウンリストから、[JDBCv2.xml]オプションを選択して、[次へ]をクリックします。

  5. ドライバ名を入力するように要求されたら、ドライバの名前(JDBC 2など)を指定し、[次へ]をクリックします。

  6. ターゲットデータベースを選択し、ドライバがローカルかリモートかを選択し、[次へ]をクリックします。

  7. 同期モデルを選択し、サードパーティ製のJDBC実装を選択し、[次へ]をクリックします。

  8. データフロー(たとえば双方向)を選択し、データベースホストのIPアドレスを指定します。さらに、ポート番号を入力し、[次へ]をクリックします。

  9. ユーザコンテナのDN、グループコンテナのDN、および発行モードを指定し、[次へ]をクリックします。

  10. (オプション)[Define Security Equivalences (「同等セキュリティ」の定義)]をクリックします。

    1. [追加]をクリックし、管理者権(またはドライバに持たせたいその他の権利)を持つオブジェクトを選択します。

    2. [適用]をクリックし、[OK]をクリックします。

  11. (オプション)オブジェクトをレプリケーションの対象から除外するには、[Exclude Administrative Roles (「管理の役割」の除外)]をクリックします。

    1. [追加]をクリックし、除外するユーザ(管理者ユーザなど)を選択します。

    2. [適用]をクリックし、[OK]をクリックします。

  12. インポートの概要を表示するには、[次へ]をクリックします。

  13. 環境設定が正しいことを確認し、[概要の終了]をクリックします。

インストールによって、必要なIdentity Managerドライバオブジェクトが作成されました。インポート中に同等セキュリティの定義や管理ユーザの除外を行わなかった場合は、ドライバオブジェクトのプロパティを変更することによってこのタスクを実行できます。

環境設定ファイルの規則

  • データベースユーザ名は、ユーザの名字と、対応する数値のプライマリキー値を連結したものです。たとえば、John Doe’のユーザ名はDoe1になります。
  • 初期パスワードは、ユーザの名字です。たとえば、John Doe’のパスワードはDoeになります。 Sybaseのパスワードは、少なくとも6文字必要です。6文字より短い場合は、名字が「p」でパディングされます。たとえば、John Doeのパスワードは、Doepppになります。パディングされる文字は、購読者コマンド変換ポリシーで変更できます。

ドライバ環境設定ファイルのインポート: Designer

JDBCの基本的なドライバ環境設定ファイルをインポートするには、Designer for Identity Managerを使用できます。この基本的なファイルを使用して、ドライバを正しく機能させるために必要なオブジェクトやポリシーを作成および設定します。

次の手順は、サンプル環境設定ファイルをインポートする方法の1つを示しています。

  1. Designerでプロジェクトを開きます。

  2. モデラーで、[ドライバセット]オブジェクトを右クリックして、[Add Connected Application (接続アプリケーションの追加)]を選択します。

  3. ドロップダウンリストから、[JBDC.xml]を選択して、[実行]をクリックします。

  4. [Perform Prompt Validation (プロンプト検証の実行)]ウィンドウで、[はい]をクリックします。

  5. フィールドに入力してドライバを設定します。

    各自の環境に特有の情報を指定します。設定の詳細については、環境設定パラメータを参照してください。

  6. パラメータを指定したら、[OK]をクリックしてドライバをインポートします。

  7. ドライバをカスタマイズおよびテストします。

  8. アイデンティティボールトにドライバを展開します。

    Designer for Identity Manager 3: Administration Guide』の「Deploying a Project to an Identity Vault」を参照してください。

3.3.3 リモートローダの設定

リモートローダの使用はオプションです。接続されたシステムでJDBCドライバを実行する場合以外は必要ありません。

  1. リモートローダをまだインストールしていない場合はインストールします。

    Novell Identity Manager 3.0管理ガイド』の「接続システムの設定」を参照してください。

  2. 適切なサードパーティ製のJDBCドライバjarファイルをリモートローダサーバにコピーします。

    1. サードパーティ製のJDBCドライバのファイル名および入手先については、サポートされているサードパーティ製のJDBCドライバを参照してください。

    2. ファイルのインストールパスについては、jarファイルの配置を参照してください。

  3. リモートドライバを設定します。

    [リモートドライバ環境設定]パラメータで、[ドライバ]パラメータを以下に設定します。

    com.novell.nds.dirxml.driver.jdbc.JDBCDriverShim
    
  4. 他のリモートローダパラメータを設定します。『Novell Identity Manager 3.0管理ガイド』の「接続システムの設定」を参照してください。

3.3.4 データベースオブジェクトのインストールおよび設定

サンプルのドライバ環境設定と同期するために、データベースオブジェクト(テーブル、トリガ、インデックスなど)をインストールし、設定します。データベースオブジェクトを設定しない場合、サンプル環境設定ファイルは動作しません。

SQLスクリプトの規則

SQLスクリプトは、install-dir\jdbc\sql\abbreviated-database-name ディレクトリにあります。

すべてのSQLスクリプトは、データベースに関係なく同じ規則を使用します。

DB2識別子の最大サイズは18文字です。この最小公分母の長さは、すべてのSQLスクリプトでのデータベース識別子の長さの上限を定義します。この長さの制限があるので、省略形が使用されます。次の表は、識別子の省略形と意味の概要を示します。

Table 3-3 識別子の省略形と意味

省略形

解釈

proc_1

ストアドプロシージャ/関数

idx_

インデックス

trg_

トリガ

_i

挿入時トリガ

_u

更新時トリガ

_d

削除時トリガ

chk_

チェック制約

pk_

ビューのプライマリキー制約

fk_

ビューの外部キー制約

mv_

ビューの複数値列

sv_

ビューの単一値列(暗黙のデフォルト)

1 より一般的な省略形はsp_ですが、このプリフィックスは、Microsoft* SQL Serverのシステムのストアドプロシージャ用に予約されています。また、このプリフィックスにより、任意の識別子(たとえば、データベースまたは所有者)を評価する前に、プロシージャが強制的にマスタデータベースで最初に検索されます。プロシージャ検索の効率を最大限にするために、このプリフィックスが意図的に避けられています。

次の表は、インデックス、トリガ、ストアドプロシージャ、関数、および制約の識別子の命名規則を示します。

Table 3-4 識別子の命名規則

データベースオブジェクト

命名規則

ストアドプロシージャ/関数

proc_procedure-or-function-name

proc_idu

インデックス

idx_unqualified-table-name_sequence-number

idx_indirectlog_1

トリガ

tgr_unqualified-table-name_triggering-statement-type_sequence-number

tgr_usr_i_1

プライマリキー制約

pk_unqualified-table-name_column-name

pk_usr_idu

外部キー制約

fk_unqualified-table-name_column-name

fk_usr_idu

チェック制約

chk_unqualified-table-name_column-name

chk_usr_idu

その他の規則

  • すべてのデータベース識別子は小文字にします。

    これは、データベース間で最もよく使用される大文字小文字の規則です。

  • 文字列フィールドの長さは64文字にします。

    ほとんどのeDirectory™属性値はこの長さのフィールドに収まります。フィールドの長さを調整すると、ストレージ効率が向上します。

  • パフォーマンスの理由から、プライマリキー値には、可能な限り、ネイティブのスカラ数値タイプを使用します(NUMERICではなくBIGINTなど)。
  • イベントログテーブルのrecord_id 列は、オーバーフローを避けるために、各データベースで許容されている最大の数値精度を保持します。
  • 識別列およびシーケンスオブジェクトは値をキャッシュしません。一部のデータベースでは、ロールバックが発生するときにキャッシュされた値が捨てられます。これによって、識別列またはシーケンス値で大きな差が出ることがあります。

IBM DB2 Universal Database (UDB)のインストール

IMPORTANT:IBM* DB2の場合は、提供されているSQLスクリプトを実行する前に、手動でオペレーティングシステムのユーザアカウントを作成する必要があります。

ユーザアカウントを作成する処理はオペレーティングシステムごとに異なるので、次の手順1はOSごとに異なります。次の手順は、Windows NTオペレーティング環境の場合です。SQLスクリプトを再実行する場合は、手順2~5だけを繰り返します。

DB2のディレクトリコンテキストは、install-dir\jdbc\sql\db2_udb\installです。

  1. ユーザidmindirect、およびdirectのユーザアカウントを作成します。

    [User Manager for Domains (ドメインのユーザマネージャ)]で、パスワードとしてnovellを使用します。

    このアカウントの[User Must Change Password at Next Login (次回のログインでパスワードを変更する必要があります)]の選択を解除します。

    [Password Never Expires (無期限パスワード)]も選択できます。

    NOTE:残りの手順はOSには依存しません。

  2. 1_install.sqlスクリプトでidm_db2.jarへのファイルパスを修正します。idm_db2.jarへのファイルパスは、クライアントマシンでこのファイルがある場所を反映する必要があります。

  3. コマンドラインプロセッサ(CLP)から1_install.sqlスクリプトを実行します。

    次に例を示します。db2 -f 2_install_8.sql

    IMPORTANT:スクリプトは、バージョン7より後のCommand Centerインタフェースでは実行されません。スクリプトでは、行継続文字「\」が使用されていますが、後のバージョンのCommand Centerでは、この文字は認識されません。

  4. バージョン8またはそれ以降では、2_install_8.sqlスクリプトを実行します。

    次に例を示します。db2 -f 2_install_8.sql

Informix Dynamic Server (IDS)のインストール

IMPORTANT:Informix* Dynamic Serverの場合は、提供されているSQLスクリプトを実行する前に、手動でオペレーティングシステムのユーザアカウントを作成する必要があります。

ユーザアカウントを作成する処理はオペレーティングシステムごとに異なるので、次の手順1はOSごとに異なります。次の手順は、Windows NTオペレーティング環境の場合です。SQLスクリプトを再実行する場合は、手順2~4だけを繰り返します。

Informix SQLスクリプトのディレクトリコンテキストは、install-dir\jdbc\sql\informix_ids\installです。

  1. Windows NTでは、ユーザidmのユーザアカウントを作成します。

    [User Manager for Domains (ドメインのユーザマネージャ)]で、パスワードとしてnovellを使用します。

    このアカウントの[User Must Change Password at Next Login (次回のログインでパスワードを変更する必要があります)]の選択を解除します。

    [Password Never Expires (無期限パスワード)]も選択できます。

    NOTE:残りの手順はOSには依存しません。

  2. SQLエディタなどのクライアントを起動します。

  3. サーバに、informixユーザ、またはDBA (データベース管理者)特権を持つ別のユーザとしてログインします。

    デフォルトで、informixユーザのパスワードは、informixになります。

    NOTE:informix以外のユーザとしてスクリプトを実行する場合は、実行する前にスクリプト内のinformixへの参照をすべて変更します。

  4. 作成するデータベースのタイプに応じて、ansi (トランザクション、ANSI互換)、log (トランザクション、ANSI非準拠)、またはno_log (非トランザクション、ANSI非準拠)サブディレクトリから1_install.sqlを開いて実行します。

Microsoft SQL Serverのインストール

Microsoft SQL Serverスクリプトのディレクトリコンテキストは、install-dir\jdbc\sql\mssql\installです。

  1. Query Analyzerなどのクライアントを開始します。

  2. データベースサーバsaユーザとしてログインします。

    デフォルトで、saユーザにパスワードはありません。

  3. インストールスクリプトを実行します。

    バージョン7の場合は、1_install_7.sqlを実行します。

    バージョン8 (2000)の場合は、1_install_2k.sqlを実行します。

    NOTE:Query Analyzerの実行のホットキーは<F5>です。

MySQLのインストール

MySQL* SQLスクリプトのディレクトリコンテキストは、install-dir\jdbc\sql\mysql\installです。

  1. mysqlなどのMySQLクライアントから、rootユーザ、または管理特権を持つ他のユーザとしてログインします。

    たとえば、コマンドラインから以下を実行します。

    mysql -u root -p

    デフォルトで、rootユーザにパスワードはありません。

  2. 使用するテーブルタイプに応じて、インストールスクリプト1_install_innodb.sqlまたは1_install_myisam.sqlを実行します。

    次に例を示します。mysql> \. c:\1_install_innodb.sql

    HINT:このステートメントの最後にセミコロンを使用しないでください。

Oracleのインストール

Oracle SQLスクリプトのディレクトリコンテキストは、install-dir\jdbc\sql\oracle\installです。

  1. SQL PlusなどのOracleクライアントから、SYSTEMユーザとしてログインします。

    デフォルトで、SYSTEMのパスワードはMANAGERです。

    NOTE:パスワードがMANAGERSYSTEM以外のユーザとしてスクリプトを実行する場合は、実行する前にスクリプト内のSYSTEMへの参照をすべて変更します。

  2. インストールスクリプト1_install.sqlを実行します。

    次に例を示します。SQL> @c:\1_install.sql

PostgreSQLのインストール

PostgreSQLスクリプトのディレクトリコンテキストは、install-dir\jdbc\sql\postgres\installです。Postgresコマンドの実行のディレクトリコンテキストは、postgres-install-dir/pgsql/binです。

  1. データベースidmを作成します。

    たとえば、UNIX*コマンドラインから、createdbコマンドを実行します。./createdb idm

  2. plpgsql手続き型言語をデータベースidmにインストールします。

    たとえば、UNIXコマンドラインから、createlangコマンドを実行します。./createlang plpgsql idm

  3. psqlなどのPostgresクライアントから、ユーザpostgresとしてidmデータベースにログオンします。

    たとえば、UNIXコマンドラインから、psqlコマンドを実行します。./psql -d idm postgres

    デフォルトで、Postgresユーザにパスワードはありません。

  4. psql内から、スクリプト1_install.sqlを実行します。

    次に例を示します。idm=# \i 1_install.sql

  5. pg_hba.confファイルを更新します。

    たとえば、idmデータベースユーザのエントリを追加します。IP-ADDRESSおよびIP-MASKは必要に応じて変更します。

    # TYPE  DATABASE    USER   IP-ADDRESS        IP-MASK           METHOD# allow driver user idm to connect to database idm host    idm         idm    255.255.255.255   255.255.255.0     password
    
  6. Postgresサーバを再起動して、pg_hba.confファイルに対する変更を有効にします。

Sybase Adaptive Server Enterprise (ASE)のインストール

IMPORTANT:JDBCメタデータサポートをデータベースサーバにインストールしていることを確認します。これは、通常、バージョン12.5より前のバージョンでのみ問題になります。

Sybase SQLスクリプトのディレクトリコンテキストは、install-dir\jdbc\sql\sybase_ase\installです。

  1. isqlなどのSybaseクライアントから、saユーザとしてログインし、1_install.sqlインストールスクリプトを実行します。

    たとえば、コマンドラインから以下を実行します。isql -U sa -P -i 1_install.sql

    デフォルトで、saアカウントにパスワードはありません。

3.3.5 テスト

各データベースのテストスクリプトは、次のディレクトリにあります。

Table 3-5 データベーススクリプトの場所

データベース

テストSQLスクリプトの場所

IBM DB2 Universal Database

install-dir\jdbc\sql\db2_udb\test

Informix Dynamic Server

install-dir\jdbc\sql\informix_ids\log\test install-dir\jdbc\sql\informix_ids\no_log\test Informix ANSIテストスクリプトはlog\testサブディレクトリにあります。

Microsoft SQL Server

install-dir\jdbc\sql\mssql\test

MySQL

install-dir\jdbc\sql\mysql\test

Oracle

install-dir\jdbc\sql\oracle\test

PostgreSQL

install-dir\jdbc\sql\postgres\test

Sybase Adaptive Server Enterprise

install-dir\jdbc\sql\sybase_ase\test

サンプルドライバを開始する前に、テストスクリプトを実行することをお勧めします。

3.3.6 トラブルシューティング

  • 明示的に変更をコミットしない限り、発行イベントが、発行者チャネルで認識されない場合があります。サポートされているデータベースのコミットキーワードについては、Section 7.3.7, コミットキーワードを参照してください。
  • テストスクリプトは、ドライバのidmデータベースユーザアカウント以外のユーザによって実行する必要があります。idmユーザとして実行した場合、イベントは、発行ループバックが許可されていない限り、ドライバの発行者チャネルから無視されます。発行ループバックの許可または禁止については、ループバックを許可しますか?を参照してください。