この章では、汎用テクノロジ・コネクタを作成および管理する方法について説明します。これらの項目が含まれます。
プロバイダは、汎用テクノロジ・コネクタを作成するための開始点となります。Oracle Identity Managerには、汎用テクノロジ・コネクタのビルディング・ブロックとして使用できるプロバイダの標準セットが用意されています。これらのプロバイダの詳細は、第19章「汎用テクノロジ・コネクタの事前定義済プロバイダ」を参照してください。
適切なプロバイダがない場合は、要件に合わせてプロバイダを作成できます。詳細は、第20章「汎用テクノロジ・コネクタ用カスタム・プロバイダの作成」を参照してください。
最後に、汎用テクノロジ・コネクタが統合要件を満たさない場合は、アダプタで利用可能なプログラム的なオプションを使用できます。詳細は、第V部「リクエストおよび承認プロセス」を参照してください。
この項では、汎用テクノロジ・コネクタを作成する方法について説明します。
汎用テクノロジ・コネクタの作成手順は、次のステップで構成されています。
第19章「汎用テクノロジ・コネクタの事前定義済プロバイダ」で説明したように、作成する汎用テクノロジ・コネクタのビルディング・ブロックとして次のプロバイダを使用できます。
リコンシリエーション・トランスポート・プロバイダ
リコンシリエーション・フォーマット・プロバイダ
プロビジョニング・トランスポート・プロバイダ
プロビジョニング・フォーマット・プロバイダ
変換プロバイダ
検証プロバイダ
これらのプロバイダの定義については、第18.2項「汎用テクノロジ・コネクタの機能アーキテクチャ」を参照してください。次に、ターゲット・システムがサポートしているデータ形式とデータ・トランスポート・メカニズムの知識に基づいて、作成する汎用テクノロジ・コネクタに組み込む必要のあるプロバイダを識別します。ターゲット・システムが複数のデータ形式とデータ・トランスポート・メカニズムをサポートしている場合は、最初の章で説明したトランスポート・プロバイダとフォーマット・プロバイダの1つの組合せを選択する必要があります。たとえば、1つの汎用テクノロジ・コネクタに複数のリコンシリエーション・フォーマット・プロバイダを組み込むことはできません。
プロバイダ要件に適合する事前定義済のプロバイダを識別します。事前定義済プロバイダの詳細は、第19章「汎用テクノロジ・コネクタの事前定義済プロバイダ」を参照してください。
事前定義済プロバイダでプロバイダ要件のすべてに対応できる場合は、カスタム・プロバイダを作成する必要はありません。事前定義済プロバイダで対応できないプロバイダ要件に対してのみ、カスタム・プロバイダの作成が必要になります。カスタム・プロバイダの作成方法は、第20章「汎用テクノロジ・コネクタ用カスタム・プロバイダの作成」を参照してください。
次の前提条件に対応する必要があります。
本番サーバーで汎用テクノロジ・コネクタを作成する場合は、次のキャッシュ・カテゴリのキャッシュを有効化します。
GenericConnector
GenericConnectorProviders
詳細は、Oracle Fusion Middleware Oracle Identity Manager管理者ガイドのアプリケーション・キャッシュのチューニングおよび管理に関する説明を参照してください。
ターゲット・システム・サーバーとOracle Identity Managerサーバーの接続性のテスト
ターゲット・システム・サーバーとOracle Identity Managerサーバーの間で接続を確立できるようにする必要があります。たとえば、UNIX環境では、ターゲット・システム・サーバーの/etc/hosts
ファイルにOracle Identity Managerサーバーの完全修飾ホスト名を入力する必要があります。
汎用テクノロジ・コネクタの作成に使用するユーザー・アカウントの作成
Oracle Identity ManagerのSYSTEM ADMINISTRATORS
グループに属するすべてのユーザーが汎用テクノロジ・コネクタを作成できます。また、必要なメニュー項目と権限を割り当てられているグループのメンバーが汎用テクノロジ・コネクタを作成できます。
必要なメニュー項目は次のとおりです。
汎用テクノロジ・コネクタの作成メニュー項目
汎用テクノロジ・コネクタの管理メニュー項目
必要な権限は次のとおりです。
フォーム・デザイナ(挿入の許可、書込み権限、削除権限)
構造ユーティリティ.追加の列(挿入の許可、書込み権限、削除権限)
メタ表の階層(挿入の許可、書込み権限、削除権限)
これらの権限がグループに適切に割り当てられていない場合は、汎用テクノロジ・コネクタを作成する際に、管理およびユーザー・コンソールの最後のページで「作成」ボタンをクリックするとエラーが発生します。
汎用テクノロジ・コネクタを作成するために管理およびユーザー・コンソールの最初のページに移動するには、管理およびユーザー・コンソールにログインして「拡張」をクリックし、「構成」の下で「汎用コネクタの作成」をクリックします。
これ以降の後続の項でページごとに説明します。
作成する汎用テクノロジ・コネクタの基本情報を指定するには、このページを使用して次の手順を実行します。
「名前」フィールドで汎用テクノロジ・コネクタの名前を指定します。
汎用テクノロジ・コネクタの名前選択に関するガイドラインを次に示します。
このOracle Identity Managerインストールで使用されている他のコネクタ(事前定義済コネクタまたは汎用テクノロジ・コネクタ)と同じ名前を指定することはできません。
このOracle Identity Managerインストールで使用されている他のコネクタ・オブジェクト(リソース・オブジェクト、ITリソース、プロセス・フォームなど)と同じ名前を指定することはできません。
注意: 既存のコネクタと同じ名前を指定するとエラー・メッセージが表示されます。ただし、既存のコネクタ・オブジェクトと同じ名前を指定してもエラー・メッセージは表示されません。そのため、指定する名前が既存のコネクタ・オブジェクトの名前と同じでないことを確認する必要があります。 汎用テクノロジ・コネクタの作成プロセスの一環として自動作成されるコネクタ・オブジェクトの詳細は、第18.4項「汎用テクノロジ・コネクタ・フレームワークで作成されるコネクタ・オブジェクト」を参照してください。 |
Oracle Identity Managerではコネクタ名が非ASCII文字に対応していないため、コネクタ名に非ASCII文字は使用できません。ただし、アンダースコア文字(_)は名前に使用できます。
リコンシリエーションに汎用テクノロジ・コネクタを使用する場合は、「リコンシリエーション」を選択して次の手順を実行します。
このコネクタで使用するリコンシリエーション・トランスポート・プロバイダは、「トランスポート・プロバイダ」リストで選択します。このリストには、事前定義済のリコンシリエーション・トランスポート・プロバイダと作成するリコンシリエーション・トランスポート・プロバイダが表示されます。
このコネクタで使用するリコンシリエーション・フォーマット・プロバイダは、「フォーマット・プロバイダ」リストで選択します。このリストには、事前定義済のリコンシリエーション・フォーマット・プロバイダと作成するリコンシリエーション・フォーマット・プロバイダが表示されます。
注意: 共有ドライブ・リコンシリエーション・トランスポート・プロバイダを選択する場合は、CSVリコンシリエーション・フォーマット・プロバイダも選択する必要があります(これは、このプロバイダのすべてのパラメータが、共有ドライブ・リコンシリエーション・トランスポート・プロバイダのパラメータにバンドルされているためです)。 |
コネクタを使用して信頼できるソース・リコンシリエーションをターゲット・システムに対して実行する場合は、「信頼できるソース・リコンシリエーション」を選択します。
注意: 「信頼できるソース・リコンシリエーション」チェック・ボックスを選択すると、このページの「プロビジョニング」リージョンは無効になります。これは、信頼できるソースとして指定したターゲット・システムではプロビジョニングを実行できないためです。信頼できるソースによるデータのリコンサイルのみが可能です。 |
プロビジョニングに汎用テクノロジ・コネクタを使用する場合は、「プロビジョニング」を選択して次の手順を実行します。
注意: 「リコンシリエーション」のみ、「プロビジョニング」のみ、または「リコンシリエーション」と「プロビジョニング」の両方を選択できます。 |
このコネクタで使用するプロビジョニング・トランスポート・プロバイダは、「トランスポート・プロバイダ」リストで選択します。このリストには、事前定義済のプロビジョニング・トランスポート・プロバイダと作成するプロビジョニング・トランスポート・プロバイダが表示されます。
Webサービス・プロビジョニング・トランスポート・プロバイダを選択し、ターゲットのWebサービスでSecure Sockets Layer(SSL)が有効化されている場合は、第19.4.1項「Oracle Identity Managerとターゲット・システムWebサービスの間のSSL通信の構成」に記載されている手順を実行する必要があります。
このコネクタで使用するプロビジョニング・フォーマット・プロバイダは、「フォーマット・プロバイダ」リストで選択します。このリストには、事前定義済のプロビジョニング・フォーマット・プロバイダと作成するプロビジョニング・フォーマット・プロバイダが表示されます。
SPMLプロビジョニング・フォーマット・プロバイダを選択する場合は、Webサービス・プロビジョニング・トランスポート・プロバイダも選択する必要があります(これは、このプロバイダのパラメータが、Webサービス・プロビジョニング・トランスポート・プロバイダのパラメータに関連しているためです)。
「続行」をクリックします。
表21-1に、「ステップ1: 基本情報の指定」ページのGUI要素のサンプル・エントリを示します。
表21-1 「ステップ1: 基本情報の指定」ページのサンプル・エントリ
「ステップ1: 基本情報の指定」ページのラベル | サンプル値またはアクション | 参照情報 |
---|---|---|
「名前」フィールド |
MyGTC2 |
該当なし |
「リコンシリエーション」チェック・ボックス |
チェック・ボックス選択 |
該当なし |
「トランスポート・プロバイダ」リスト |
共有ドライブ |
共有ドライブ・リコンシリエーション・トランスポート・プロバイダ |
「フォーマット・プロバイダ」リスト |
CSV |
CSVリコンシリエーション・フォーマット・プロバイダ |
「プロビジョニング」チェック・ボックス |
チェック・ボックス選択 |
該当なし |
「トランスポート・プロバイダ」リスト |
Webサービス |
Webサービス・プロビジョニング・トランスポート・プロバイダ |
「フォーマット・プロバイダ」リスト |
SPML |
SPMLプロビジョニング・フォーマット・プロバイダ |
このページを使用して、「ステップ1: 基本情報の指定」ページで選択したプロバイダのパラメータ値を指定します。
このページでは、プロバイダのパラメータは次の2つのカテゴリに分けられます。
ランタイム・パラメータは、前のページで選択したプロバイダの入力変数です。ランタイム・パラメータは、プロバイダの設計に制約されない値を示します。たとえば、リコンサイルするデータファイルが格納されているディレクトリの場所がランタイム・パラメータ値となります。
この項に示すパラメータは、プロバイダの設計パラメータ、またはすべての汎用テクノロジ・コネクタに共通するリコンシリエーション固有パラメータです。設計パラメータは、プロバイダ設計の一部として定義される1つまたは複数の値を表します。
例:
フォーマット・プロバイダで解析可能なデータファイルの形式がこのプロバイダの設計パラメータとなります。プロバイダの設計時に、そのプロバイダが解析可能な一連の形式を定義します。「ステップ2: パラメータ値の指定」ページで、フォーマット・プロバイダのインスタンスが解析する必要のある特定の形式を(サポートしている形式のセットの中から)指定します。
次に、リコンシリエーション固有の設計パラメータを示します。
注意: 前のページで「リコンシリエーション」オプションを選択していない場合、リコンシリエーション固有の設計パラメータはこのページに表示されません。 |
このパラメータを使用して、リコンシリエーション実行のバッチ・サイズを指定します。このパラメータを使用することで、各リコンシリエーションの実行中に、リコンシリエーション・エンジンによりターゲット・システムからフェッチされるレコードの合計数をバッチに分けられます。
このパラメータのデフォルト値はAll
です。
リコンシリエーション中、検証プロバイダは、リコンシリエーション・フォーマット・プロバイダからのデータを入力として受け入れます。一部のリコンシリエーション・データ・レコードは、検証チェックを通らない場合があります。「リコンシリエーション停止のしきい値」パラメータを使用すると、処理済のリコンシリエーション・レコード総数に対する検証チェックを通らなかったレコードの割合が指定値を超えた場合に、リコンシリエーションを自動的に停止できます。
次に、このパラメータの使用例を示します。
「リコンシリエーション停止のしきい値」パラメータの値として20を指定したとします。この場合は、処理済のレコード総数に対する失敗したレコードの割合が20%以上になるとリコンシリエーションが停止されます。2番目と8番目のレコードが検証チェックに失敗したとします。この段階で失敗したレコードの数は2、処理されたレコードの総数は8です。失敗したレコードの割合は25%になり、指定したしきい値の20を上回ります。そのため、リコンシリエーションは8番目のレコードの処理後に停止します。
注意:
|
このパラメータのデフォルト値はNone
です。このデフォルト値では、リコンシリエーションの実行中、チェックに失敗したレコード数に関係なくターゲット・システムのレコードをすべて処理するように指定します。
「リコンシリエーション停止のしきい値」パラメータを使用した場合、リコンシリエーション実行の開始直後に無効レコードが発生するという問題が発生することがあります。たとえば、「リコンシリエーション停止のしきい値」パラメータの値として40を指定したとします。リコンシリエーションが開始され、最初のレコードが検証チェックに失敗します。この段階で、処理されたレコードの総数に対する失敗したレコードの割合は100%に達します。そのため、リコンシリエーションは最初のレコードの処理後ただちに停止されます。
このような状況を避けるために、「停止しきい値最小レコード」パラメータを「リコンシリエーション停止のしきい値」パラメータと併用できます。「リコンシリエーション停止のしきい値」を有効化する前に、「停止しきい値最小レコード」パラメータで検証プロバイダが処理する必要のあるレコード数を指定します。
次に、このパラメータの使用例を示します。
次の値を指定したとします。
リコンシリエーション停止のしきい値: 20
停止しきい値最小レコード: 80
このように値を指定すると、81番目以降のレコードに対して「リコンシリエーション停止のしきい値」の検証が有効化されます。つまり、80番目のレコードが処理された後にレコードが検証チェックに失敗すると、処理された総レコード数に対する失敗したレコードの割合がリコンシリエーション・エンジンによって計算されます。
このパラメータのデフォルト値はNone
です。
注意:
|
このパラメータを使用して、リコンシリエーション・エンジンで増分リコンシリエーションと完全リコンシリエーションのどちらを実行するかを指定します。
注意: 完全リコンシリエーションと増分リコンシリエーションの結果は同じです。すなわち、最後のリコンシリエーション実行後に作成または更新されたターゲット・システムのレコードは、Oracle Identity Managerによってリコンサイルされます。 |
増分リコンシリエーションでは、前回のリコンシリエーションの実行後に新しく追加または変更されたターゲット・システム・レコードのみが、Oracle Identity Managerにリコンサイルされます。リコンシリエーション・イベントは、これらの各レコードに対して作成されます。
完全リコンシリエーションでは、すべてのターゲット・システム・レコードがOracle Identity Managerにリコンサイルされます。すでにリコンサイル済のレコードは、最適化リコンシリエーション機能によって識別され、無視されます。リコンシリエーション・イベントは、残りのレコードに対して作成されます。
次のいずれかの条件に該当する場合は、増分リコンシリエーションを選択してください。
ターゲット・システムで生成されるファイルまたは個々のデータ・レコードにタイムスタンプが付けられるか、またはなんらかの方法によって一意のマークが付けられ、タイムスタンプまたはマークが付けられたレコードをリコンシリエーション・トランスポート・プロバイダが認識できる場合
例:
ターゲット・システムでは、ユーザー・データ・レコードの作成または変更時にタイムスタンプを付けることができます。このタイムスタンプ情報の読取りが可能なカスタム・リコンシリエーション・トランスポート・プロバイダを作成すると、新規追加または変更されたデータ・レコードのみがリコンシリエーション中にOracle Identity Managerに転送されます。
ターゲット・システムが、最後のリコンシリエーション実行後に新規追加または変更されたデータ・レコードのみを提供する場合
いずれの条件にも該当しない場合は、完全リコンシリエーションを選択する必要があります。
このパラメータを使用して、ターゲット・システムの複数値属性データ(子データ)の削除をOracle Identity Managerでリコンサイルするかどうかを指定します。
次に、この設計パラメータの使用例を示します。
ターゲット・システムにユーザーJohn Doe
のアカウントがあります。このユーザーは、ターゲット・システムの2つのユーザー・グループ、CREATE USERS
とREVIEW PERMISSIONS
のメンバーです。このユーザー・アカウント(およびグループ・メンバーシップ情報)は、Oracle Identity Managerにも存在します。
ターゲット・システムでこのユーザーをREVIEW PERMISSIONS
グループから削除したとします。次のリコンシリエーション実行中にOracle Identity Managerが行うアクションは、「複数値属性データの削除の調整」チェック・ボックスを選択したかどうかによって異なります。
このチェック・ボックスを選択した場合、ターゲット・システムのREVIEW PERMISSIONS
グループのメンバーであるこのユーザーの情報はOracle Identity Managerデータベースから削除されます。ターゲット・システムのこのユーザー・アカウントに加えられた他の変更もすべてリコンサイルされます。
このチェック・ボックスを選択しない場合、ターゲット・システムのREVIEW PERMISSIONS
グループのメンバーであるこのユーザーの情報はOracle Identity Managerデータベースから削除されません。ただし、ターゲット・システムのこのユーザー・アカウントに加えられた他の変更はすべてリコンサイルされます。
このパラメータを使用して、日付値がターゲット・システムに格納される書式を指定します。
指定する書式は、リコンシリエーション時にフェッチされる日付値を検証し、その日付値をOracle Identity Managerの内部で使用される書式に変換するために使用されます。
日付書式の検証プロバイダは、事前定義されている検証プロバイダの1つです。日付書式の検証プロバイダは、リコンシリエーション実行時に、ターゲット・システムからフェッチした日付値をソース日付書式を使用して検証します。ソース日付書式と一致する日付値のみが、Oracle Identity Managerで使用される日付書式に変換され、リコンサイルされます。このような書式の検証と変換は、ターゲット・システムのすべての日付フィールド(生年月日や入社日など)に適用されます。
指定可能な日付書式の詳細は、Sun Java Webサイトの次のページを参照してください。
http://java.sun.com/docs/books/tutorial/i18n/format/simpleDateFormat.html
注意: 第21.2.4.3.1項「データセットのフィールドの追加または編集」で説明している手順の実行時に、ソース日付書式を日付検証で使用するには、次のようにする必要があります。
|
「ソース日付書式」パラメータのデフォルト値は、XL.DefaultDateFormat
システム・プロパティの値として指定された日付書式です。「ソース日付書式」パラメータに値を指定しないと、リコンシリエーション時の日付検証でデフォルト日付書式が使用されます。
関連項目: Oracle Identity Managerのシステム・プロパティの詳細は、Oracle Fusion Middleware Oracle Identity Manager管理者ガイドのOracle Identity Managerのシステム・プロパティに関する説明を参照してください。 |
次に「ソース日付書式」パラメータの使用例を示します。
ターゲット・システムに、次のように日付値が設定されているとします。
Date 1: 05/04/2007 06:25:44 PM
Date 2: 05/06/2007 07:31:44 PM
Date 3: Thu, Apr 9, '98
Date 4: 07/03/2008 02:15:55 PM
使用例1:
コネクタを作成するときに、「ソース日付書式」パラメータに次の値を入力しました。
MM/dd/yyyy hh:mm:ss a
リコンシリエーション実行時に、Date 3の値を含むレコードは、指定したソース日付書式と一致しないためリコンサイルされません。
使用例2:
コネクタを作成するときに、「ソース日付書式」パラメータの値を入力していません。このため、リコンシリエーション実行時に、4つのレコードすべてがXL.DefaultDateFormat
システム・プロパティの値として指定された日付書式に対して検証されます。
次に、プロビジョニング固有の設計パラメータを示します。
注意: 前のページで「プロビジョニング」オプションを選択していない場合、このプロビジョニング固有の設計パラメータは表示されません。 |
このパラメータを使用して、プロビジョニング操作時に日付値をターゲット・システムに送信する書式を指定します。
プロビジョニング操作時には、日付値が「ターゲット日付書式」パラメータの値として指定した書式に変換されます。このような書式の変換は、プロビジョニング操作で使用されるすべての日付フィールド(生年月日や入社日など)に適用されます。
指定可能な日付書式の詳細は、Sun Java Webサイトの次のページを参照してください。
http://java.sun.com/docs/books/tutorial/i18n/format/simpleDateFormat.html
日付書式を指定しない場合は、次の日付書式がこのパラメータのデフォルト値として使用されます。
yyyy/MM/dd hh:mm:ss z
次に「ターゲット日付書式」パラメータの使用例を示します。
プロビジョニング操作では、入力したすべての日付値がyyyy/MM/dd hh:mm:ss z
書式になります。
使用例1:
コネクタを作成するときに、「ターゲット日付書式」パラメータに次の値を入力しました。
yyyy.MM.dd G 'at' hh:mm:ss z
プロビジョニング操作では、Oracle Identity Managerの日付値(たとえば2007/05/04 06:25:44 IST)はターゲット日付書式(たとえば2007.05.04 AD at 06:25:44 IST)に変換され、ターゲット・システムに送られます。
使用例2:
コネクタを作成するときに、「ターゲット日付書式」パラメータの値を入力していません。プロビジョニング操作では、日付値はターゲット・システムにデフォルトのyyyy/MM/dd hh:mm:ss z
書式で送られます。
ランタイム・パラメータと設計パラメータの値の指定が完了したら、「続行」をクリックします。
表21-2に、「ステップ2: パラメータ値の指定」ページのサンプル・エントリを示します。このページに表示されるGUI要素は、「ステップ1: 基本情報の指定」ページのエントリに基づきます。
表21-2 「ステップ2: パラメータ値の指定」ページのサンプル・エントリ
「ステップ2: パラメータ値の指定」ページのラベル | サンプル値またはアクション | 参照情報 |
---|---|---|
共有ドライブ・リコンシリエーション・トランスポート・プロバイダのランタイム・パラメータ |
||
「ステージング・ディレクトリ(親アイデンティティ・データ)」フィールド |
D:\gctestdata\commaDelimited\parent |
該当なし |
「ステージング・ディレクトリ(複数値アイデンティティ・データ)」フィールド |
D:\gctestdata\commaDelimited\child |
該当なし |
「アーカイブ・ディレクトリ」フィールド |
D:\gctestdata\commaDelimited\archive |
該当なし |
「ファイルの接頭辞」フィールド |
file |
該当なし |
「指定されたデリミタ」フィールド |
, |
該当なし |
「タブ区切り」チェック・ボックス |
チェック・ボックス選択解除 |
該当なし |
「固定列幅」フィールド |
該当なし |
|
「一意の属性(親データ)」フィールド |
UserIDTD |
該当なし |
Webサービス・プロビジョニング・トランスポート・プロバイダのランタイム・パラメータ |
第19.4項「Webサービス・プロビジョニング・トランスポート・プロバイダ」 |
|
「WebサービスURL」フィールド |
http://acme123:8080/spmlws/services/HttpSoap11 |
該当なし |
SPMLプロビジョニング・フォーマット・プロバイダのランタイム・パラメータ |
第19.3項「SPMLプロビジョニング・フォーマット・プロバイダ」 |
|
「ターゲットID」フィールド |
target |
該当なし |
「ユーザー名(認証)」フィールド |
xelsysadm |
該当なし |
「ユーザー・パスワード(認証)」フィールド |
該当なし |
|
共有ドライブ・リコンシリエーション・トランスポート・プロバイダの設計パラメータ |
第19.1項「共有ドライブ・リコンシリエーション・トランスポート・プロバイダ」 |
|
「ファイル・エンコーディング」フィールド |
Cp1251 |
該当なし |
Webサービス・プロビジョニング・トランスポート・プロバイダの設計パラメータ |
第19.4項「Webサービス・プロビジョニング・トランスポート・プロバイダ」 |
|
「WebサービスのSOAPアクション」フィールド |
http://xmlns.oracle.com/OIM/provisioning/processRequest |
該当なし |
SPMLプロビジョニング・フォーマット・プロバイダの設計パラメータ |
第19.3項「SPMLプロビジョニング・フォーマット・プロバイダ」 |
|
「SPML WebサービスのWSSEが構成されていますか。」チェック・ボックス |
チェック・ボックス選択解除 |
該当なし |
「カスタム認証資格証明ネームスペース」フィールド |
http://xmlns.oracle.com/OIM/provisioning |
該当なし |
「カスタム認証ヘッダー要素」フィールド |
OIMUser |
該当なし |
「ユーザー名を格納するカスタム要素」フィールド |
OIMUserId |
該当なし |
「パスワードを格納するカスタム要素」フィールド |
OIMUserPassword |
該当なし |
「SPML Webサービスのバインディング・スタイル(DOCUMENTまたはRPC)」フィールド |
RPC |
該当なし |
「SPML Webサービスの複合データ型」フィールド |
該当なし |
|
「SPML Webサービス操作名」フィールド |
processRequest |
該当なし |
「SPML Webサービスのターゲット・ネームスペース」フィールド |
http://xmlns.oracle.com/OIM/provisioning |
該当なし |
「SPML WebサービスのSOAPメッセージ本文の接頭辞」フィールド |
該当なし |
|
「グループ・メンバーシップ情報を保持している子データセットのID属性」フィールド |
該当なし |
|
汎用設計パラメータ |
該当なし |
|
「ターゲット日付書式」フィールド |
yyyy-MM-dd hh:mm:ss.fffffffff |
該当なし |
「バッチ・サイズ」フィールド |
すべて |
該当なし |
「リコンシリエーション停止のしきい値」フィールド |
なし |
該当なし |
「停止しきい値最小レコード」フィールド |
なし |
該当なし |
「ソース日付書式」フィールド |
yyyy/MM/dd hh:mm:ss z |
該当なし |
「複数値属性データの削除の調整」チェック・ボックス |
チェック・ボックス選択 |
該当なし |
「リコンシリエーション・タイプ」リスト |
増分 |
該当なし |
図21-2に示す「ステップ2: パラメータ値の指定」ページの最初のセクションには、表21-2のエントリが入力されています。
図21-3に示す「ステップ2: パラメータ値の指定」ページの2番目のセクションには、表21-2のエントリが入力されています。
図21-4に示す「ステップ2: パラメータ値の指定」ページの3番目のセクションには、表21-2のエントリが入力されています。
このページを使用して、データセットやデータセットのフィールド間のマッピングを定義します。つまり、次の処理を行うユーザー・データ・フィールドをこのページで指定します。
リコンシリエーション時のターゲット・システムからOracle Identity Managerへの伝播
プロビジョニング時のOracle Identity Managerからターゲット・システムへの伝播
汎用テクノロジ・コネクタのコンテキストでは、メタデータという用語は、ターゲット・システム上のユーザー・アカウント情報を構成する一連のアイデンティティ・フィールドを意味します。
「名」、「姓」、「入社日」および「部門ID」は、メタデータを構成するユーザー・データ・フィールドの例です。これらのフィールドに割り当てられる値が、ターゲット・システムのユーザー・データを構成します。たとえば、ターゲット・システム上のユーザーJohn Doeのアイデンティティ情報は次のようなフィールドで構成されます。
名: John
姓: Doe
入社日: 04-December-2007
部門ID: Sales
. . .
「ステップ2: パラメータ値の指定」ページで「続行」ボタンをクリックした後に「ステップ3: コネクタ構成の変更」ページに表示されるメタデータは、次の要因によって決まります。
「ステップ1: 基本情報の指定」ページおよび「ステップ2: パラメータ値の指定」ページの入力内容
ターゲット・システムのサンプル・データの可用性
Oracle Identity Managerでは、メタデータの検出の試行中に次の手順が実行されます。
リコンシリエーション・トランスポート・プロバイダとリコンシリエーション・フォーマット・プロバイダでは、ターゲット・システムからメタデータのフェッチおよび解析が試行されます。
同時に、共有ドライブ・リコンシリエーション・トランスポート・プロバイダとCSVリコンシリエーション・フォーマット・プロバイダでは、ターゲット・システムからメタデータを検出できます。カスタム・プロバイダで同じ機能を実行する場合は、次の要件を満たす必要があります。
リコンシリエーション・トランスポート・プロバイダのJavaコードに、ReconTransportProvider
インタフェースのgetMetadata()
メソッドが実装されていること
リコンシリエーション・フォーマット・プロバイダのJavaコードに、ReconFormatProvider
インタフェースのparseMetadata()
メソッドが実装されていること
これらのプロバイダがターゲット・システムからメタデータをフェッチして解析すると、Oracle Identity Managerはこれらのプロバイダが戻した情報を使用してメタデータを表示し、この場合、次の手順は実行されません。
リコンシリエーション・トランスポート・プロバイダとリコンシリエーション・フォーマット・プロバイダで、ターゲット・システムからメタデータをフェッチおよび解析できない場合は、プロビジョニング・トランスポート・プロバイダとプロビジョニング・フォーマット・プロバイダでこの機能の実行が試行されます。
Webサービス・プロビジョニング・トランスポート・プロバイダとSPMLプロビジョニング・フォーマット・プロバイダでは、ターゲット・システムからメタデータを検出できません。カスタム・プロバイダでメタデータを検出できるようにするには、次の要件を満たす必要があります。
プロビジョニング・トランスポート・プロバイダのJavaコードに、ProvisioningTransportProvider
インタフェースのdefineMetadata()
メソッドが実装されていること
プロビジョニング・フォーマット・プロバイダのJavaコードに、ProvisioningFormatProvider
インタフェースのparseMetadata()
メソッドが実装されていること
プロビジョニング・トランスポート・プロバイダとプロビジョニング・フォーマット・プロバイダがターゲット・システムからメタデータをフェッチおよび解析すると、Oracle Identity Managerはこれらのプロバイダが戻した情報を使用してメタデータを表示します。これらのプロバイダが失敗した場合、選択したプロビジョニング固有のプロバイダのいずれかに定義されたデフォルト・フィールドのみが表示されます。たとえば、「OIM - アカウント」データセットのID
フィールドや「プロビジョニング・ステージング」データセットのobjectClass
フィールドおよびcontainerID
フィールドがデフォルトで表示されます。これらのデータセットおよびフィールドについては後述します。
図21-5の「ステップ3: コネクタ構成の変更」ページは、「「ステップ1: 基本情報の指定」ページ」と「「ステップ2: パラメータ値の指定」ページ」の最後に記載したサンプル・エントリを示しています。
「ステップ3: コネクタ構成の変更」ページに表示されているデータセットは、次のカテゴリに分けられます。
「ソース」データセットは、「プロビジョニング」オプションの選択に関係なく、最初のページで「リコンシリエーション」オプションを選択した場合にのみ表示されます。
「リコンシリエーション・ステージング」データセットは、「プロビジョニング」オプションの選択に関係なく、「ステップ1: 基本情報の指定」ページで「リコンシリエーション」オプションを選択した場合にのみ表示されます。
「Oracle Identity Manager」データセットは、「ステップ1: 基本情報の指定」ページで選択したオプションに関係なく常に表示されます。ただし、「ステップ1: 基本情報の指定」ページで「信頼できるソース・リコンシリエーション」オプションを選択した場合、「OIM - アカウント」データセットとその子データセットは表示されません。
「OIM - ユーザー」データセットに表示されるフィールドは、Oracle Identity Managerユーザーに対して事前定義されています。「OIM - ユーザー」データセットの上部にある矢印アイコンをクリックすると、このデータセットのリストの全体表示と最小表示を切り替えることができます。データセットを最小化した状態では、次のフィールドが表示されます。
ユーザーID
電子メール
パスワード
名
姓
注意: 「ステップ1: 基本情報の指定」ページで「信頼できるソース・リコンシリエーション」オプションを選択した場合は、「OIM - ユーザー」データセットのすべてのフィールドが表示され、この場合、矢印アイコンを使用して表示を最小化することはできません。 |
これらのフィールドによって、値の定義が必要なOracle Identity Managerユーザー・フィールドの最小セットが構成されます。「OIM - ユーザー」データセットの残りのフィールドの一部または全部をOracle Identity Managerインストールにおける必須のOracle Identity Managerユーザー・フィールドとして指定できます。これを行うには、Oracle Identity Managerユーザーの作成時にこれらのフィールドに必ず値が入力されるようにします。
注意: 一定の領域を超えるデータセットおよびフィールドの名前は切り捨てられ、切り捨てた箇所の後にはドットが表示されます。たとえば、「OIM - ユーザー」データセットの「デプロビジョニング日」フィールドは次のように表示されます。
フィールドの完全名を表示するには、このフィールドまたはこのフィールドがマップされているフィールドの編集アイコンをクリックします。ポップアップ・ウィンドウでは、確認するフィールド名がそのフィールドが属するデータセットに応じて最初のページまたは2番目のページに表示されます。 |
Design Consoleを使用すると、事前定義済のOracle Identity Managerユーザー・フィールドのリストにユーザー定義フィールド(UDF)を追加できます。これらのUDFは、「ステップ3: コネクタ構成の変更」ページの「OIM - ユーザー」データセットに表示されます。
「ステップ1: 基本情報の指定」ページで選択したオプションによっては、次のフィールドが「ステップ3: コネクタ構成の変更」ページにデフォルトで表示されます。
ID
フィールド
ID
フィールドは、「ステップ1: 基本情報の指定」ページで「リコンシリエーション」オプションまたは「プロビジョニング」オプションを選択したかどうかに関係なく、「OIM - アカウント」セットにデフォルトで表示されます。アカウントの作成時、このフィールドには、Oracle Identity Managerとターゲット・システムでそのアカウントを一意に識別する値が格納されます。特定のユーザーについては、変更、削除、有効化、無効化などの他の操作、および子データ操作を指示する際にこの一意のフィールドが使用されます。
すべてのターゲット・システムは、ユーザー・アカウントの作成と更新をトラッキングするために一意のフィールドを備えています。カスタム・プロビジョニング・トランスポート・プロバイダの作成時には、「ユーザーの作成」操作の終了時にプロバイダがこの一意のフィールドの値をターゲット・システムから取得していることを確認する必要があります。その後、この値は、「OIM - アカウント」データセットのID
フィールドへの移入に使用されます。
リコンシリエーション中、ID
フィールドの値は「リコンシリエーション・ステージング」データセットの対応する一意のフィールドから取得する必要があります。この操作を設定するには、この2つのフィールド間のマッピングを作成します。マッピングの作成手順については、この項で後述します。
注意: 汎用テクノロジ・コネクタの作成時に「プロビジョニング」と「リコンシリエーション」の両方のオプションを選択しても、IDフィールドとターゲット・システムの一意のフィールドの間にマッピングを作成しない場合は、リコンシリエーションによってリンクされているレコードをプロビジョニング操作(変更、削除、有効化、無効化、子データ操作など)に使用できません。これは、リンクされているレコードがIDフィールドに移入されていないためです。 |
objectClass
フィールドは、「ステップ1: 基本情報の指定」ページでSPMLプロビジョニング・フォーマット・プロバイダを選択した場合にのみ、「OIM - アカウント」データセットと「プロビジョニング・ステージング」データセットにデフォルトで表示されます。
containerID
フィールドは、「ステップ1: 基本情報の指定」ページでSPMLプロビジョニング・フォーマット・プロバイダを選択した場合にのみ、「OIM - アカウント」データセットと「プロビジョニング・ステージング」データセットにデフォルトで表示されます。
「プロビジョニング・ステージング」データセットは、「リコンシリエーション」オプションの選択に関係なく、最初のページで「プロビジョニング」オプションを選択した場合にのみ表示されます。
「ステップ3: コネクタ構成の変更」ページに表示されるデータセットは、「ステップ1: 基本情報の指定」ページと「ステップ2: パラメータ値の指定」ページの入力内容によって異なります。データセット内に表示されるフィールドは、メタデータの検出の有無によって決まります。
注意: 次のいずれかの条件に該当する場合、メタデータの検出は行われません。
|
次に、この例を示します。
「ステップ1: 基本情報の指定」ページで「リコンシリエーション」オプションのみを選択したとします。また、メタデータの検出は行われなかったとします。この条件で、「ステップ3: コネクタ構成の変更」ページに表示されるデータセットおよびフィールドは、次のように要約できます。
次のデータセットが表示されます。
ソース
リコンシリエーション・ステージング
Oracle Identity Manager
これらのデータセットを構成するフィールドは表示されません。
さらに、「ステップ1: 基本情報の指定」ページで「信頼できるソース・リコンシリエーション」オプションを選択した場合、「OIM - アカウント」データセットとその子データセットは表示されません。
表21-3の使用例1は、この一連の入力条件の結果を示しています。この表の他の使用例は、表の最初の行と列に記載されている入力条件の組合せによって表示されるデータセットとフィールドを示しています。
表21-3 様々な入力条件によるデータセットおよびフィールドの表示
「リコンシリエーション」オプションのみ選択 | 「リコンシリエーション」と「プロビジョニング」の両方のオプションの選択 | 「プロビジョニング」オプションのみ選択 | |
---|---|---|---|
メタデータの検出なし |
使用例1 次のデータセットが表示されます。
これらのデータセットを構成するフィールドは表示されません。 「ステップ1: 基本情報の指定」ページで「信頼できるソース・リコンシリエーション」オプションを選択した場合、「OIM - アカウント」データセットとその子データセットは表示されません。 |
使用例2 次のデータセットが表示されます。
これらのデータセットを構成するフィールドは表示されません。 |
使用例3 次のデータセットが表示されます。
これらのデータセットを構成するフィールドは表示されません。 |
メタデータの検出あり |
使用例4 次のデータセットが表示されます。
これらのデータセットを構成するフィールドが表示されます。 「ステップ1: 基本情報の指定」ページで「信頼できるソース・リコンシリエーション」オプションを選択した場合、「OIM - アカウント」データセットとその子データセットは表示されません。 |
使用例5 次のデータセットが表示されます。
これらのデータセットを構成するフィールドが表示されます。 |
使用例6 次のデータセットが表示されます。
これらのデータセットを構成するフィールドが表示されます。 |
「ステップ3: コネクタ構成の変更」ページに表示されている流れ線は、異なるデータセットの2つのフィールド間のマッピング(リンク)をそれぞれ示しています。マッピングは、次のいずれかを目的としています。
プロビジョニングまたはリコンシリエーションを目的とする、2つのデータセットのフィールド間のデータ・フロー・パスの確立
このタイプのマッピングに基づいて、データの検証または変換が行われます。
2つのデータセットのフィールド値の比較(一致)の基盤の構築
「リコンシリエーション・ステージング」データセットと「OIM - ユーザー」データセットのフィールド間に作成されたマッピングは、リコンシリエーション・ルールの基礎を成します。
「リコンシリエーション・ステージング」データセットの一意のフィールドと「OIM - アカウント」データセットのID
フィールドの間のマッピングを作成すると、リコンシリエーション一致のキー・フィールドの識別が容易になります。IDフィールドに加えて、「OIM - アカウント」データセットの他のフィールドを「リコンシリエーション・ステージング」データセットの対応するフィールドに(一致のみで)マップして、リコンシリエーション一致のコンポジット・キー・フィールドを作成できます。
「ステップ3: コネクタ構成の変更」ページでは、次のアクションを実行できます。
メタデータ検出で検出されたアイデンティティ・フィールドは、「ステップ3: コネクタ構成の変更」ページに表示されます。これらのフィールドやフィールド間のマッピングを変更できます。必要に応じて、このページで新しいフィールドの追加や、フィールド間のマッピングの作成を行うこともできます。
「ステップ3: コネクタ構成の変更」ページでフィールドの追加や編集の際に実行できるアクションの概要を次に示します。
注意: これらのアクションは、この後の手順で詳しく説明しています。この手順では、一部のアクションを実行する前に満たす必要がある条件についても説明しています。 |
デフォルトの属性(データ型や長さなど)が、表示されるフィールドにメタデータ検出によって割り当てられます。これらのフィールドを編集して必要な属性を設定する必要があります。
注意: Oracle Identity Managerが、リコンシリエーション時にフェッチされた日付値を認識できるのは、「リコンシリエーション・ステージング」データセットのフィールドに「日付」データ型を設定した場合のみです。また、「ステップ2: パラメータ値の指定」ページで「ソース日付書式」パラメータの値を指定した場合は、「ソース」データセットの日付フィールドを「リコンシリエーション・ステージング」データセットの対応する日付フィールドにマップする必要があります。 「ソース日付書式」パラメータについては、第21.2.4.2項「「ステップ2: パラメータ値の指定」ページ」で説明しています。 |
変換プロバイダを使用してフィールド間の変換マッピングを作成できます。このアクションを実行するときは、事前定義済の連結変換プロバイダまたは翻訳変換プロバイダ、あるいは自ら作成したカスタム変換プロバイダを使用できます。
「リコンシリエーション・ステージング」データセットと「Oracle Identity Manager」データセットのフィールド間に一致のみのマッピングを作成できます。「リコンシリエーション・ステージング」データセットと「OIM - ユーザー」データセットの間に作成する一致のみのマッピングが、リコンシリエーション・ルールになります。「リコンシリエーション・ステージング」データセットと「OIM - アカウント」データセットの間に作成する一致のみのマッピングでは、リコンシリエーション一致のキー・フィールドが指定されます。
既存のデータセットに子データセットを追加できます。
プロセス・フォームとデータベースの両方でフィールドの値を暗号化することができます。
フィールドを参照フィールドに指定して、フィールドの入力ソースを選択できます。入力ソースには、参照定義かOracle Identity Managerデータベース表の列の組合せを指定できます。
ユーザー・アカウント・ステータスのリコンシリエーションを構成できます。
ユーザー・アカウント・ステータスのリコンシリエーションを構成する場合は、「アカウント・ステータスのリコンシリエーションの構成」を参照してください。
データセットのフィールドを追加または編集するには、次の手順を実行します。
注意: 次の手順で説明するGUI要素とページの表示は、フィールドを追加または編集するデータセットによって異なります。たとえば、「ソース」データセットのフィールドを追加または編集する場合、「必須」チェック・ボックスと「暗号化」チェック・ボックスは表示されません。 |
フィールドの追加または編集のいずれかに応じて、データセットの「追加」アイコン、またはフィールドの編集アイコンをクリックします。
「ステップ1: フィールド情報」ページで次のGUI要素の値を指定します。
フィールド名: フィールドを追加する場合は、そのフィールドの名前を指定します。非ASCII文字は使用できないため、指定するフィールド名にはASCII文字のみを使用します。
アクションのマッピング: マッピングの宛先フィールドとしてこのフィールドで作成するマッピングのタイプを選択します。次のいずれかのマッピング・アクションを選択できます。
ソース(入力)フィールドと追加または編集するフィールドの間で1対1マッピングのみを作成し、変換プロバイダを使用しない場合は、「変換なしでマッピングの作成」を選択します。
フィールドを編集し、そのフィールドを宛先フィールドとするマッピングを削除する場合は、「マッピングの削除」オプションを選択します。マッピングの削除手順の詳細は、「フィールド間のマッピングの削除」を参照してください。
「アクションのマッピング」リストの変換マッピングのオプションは、事前定義された変換プロバイダと作成したカスタム変換プロバイダに基づいて表示されます。次のメニュー・オプションは、事前定義済の変換プロバイダに対応しています。
* 連結ありでマッピングの作成
* 変換ありでマッピングの作成
変換マッピングの選択時には、次のガイドラインが適用されます。
変換マッピングは、次のデータセットのフィールド間でのみ作成可能です。
-「ソース」と「リコンシリエーション・ステージング」
- 「Oracle Identity Manager」と「プロビジョニング・ステージング」
したがって、たとえば「リコンシリエーション・ステージング」データセットと「Oracle Identity Manager」データセットのフィールド間では変換マッピングを作成できません。
次のソース・フィールドと宛先フィールドで1対2マッピングを作成することはできません。
ソース・フィールド: 「リコンシリエーション・ステージング」データセットの一意のフィールド
宛先フィールド: 「OIM - ユーザー」データセットのUser ID
フィールドおよび「OIM - アカウント」データセットのID
フィールド
このマッピングはサポートされていません。かわりに、「リコンシリエーション・ステージング」データセットの一意のフィールドとUser ID
フィールド(「OIM - ユーザー」データセット)またはID
フィールド(「OIM - アカウント」データセット)の間の1対1のマッピングを作成する必要があります。
「プロビジョニング・ステージング」データセットのすべてのフィールドは、「OIM - ユーザー」データセットおよび「OIM - アカウント」データセットの対応するフィールドにマップしてください。
ソース・フィールドまたは宛先フィールドとして「OIM - ユーザー」データセットのフィールドを指定したマッピングを作成すると、「OIM - ユーザー」データセットのフィールド・リストの表示はそのマッピングの作成時の位置(展開または最小化)で固定されます。「OIM - ユーザー」データセットの固定表示を解除して矢印アイコンを使用可能にするには、ソース・フィールドまたは宛先フィールドとして「OIM - ユーザー」データセットのフィールドを指定したマッピングをすべて削除する必要があります。
変換フィールドの入力フィールドの1つとしてリテラル・フィールドを使用できます。「リテラル」オプションを選択した場合は、そのフィールドに値を入力する必要があります。このオプションの選択後は、リテラル・フィールドを空白にしないでください。
変換マッピングの作成に関する制限事項は、第21.2.4.3項「「ステップ3: コネクタ構成の変更」ページ」を参照してください。
一致のみ: 一致のみのマッピングの宛先フィールドとしてフィールドを使用する場合は、このチェック・ボックスを選択します。すでに説明したように、次のタイプの一致のみのマッピングを作成できます。
注意: 親と子の両方のデータセットで一致のみのマッピングを作成する必要があります。 |
リコンシリエーション・ルールを作成するには、「リコンシリエーション・ステージング」データセットのフィールドと「OIM - ユーザー」データセットのフィールド間で一致のみのマッピングを作成します。各マッピングがリコンシリエーション・ルールの要素を表します。子データセットがある場合は、一致のみのマッピングの入力フィールドとなる「リコンシリエーション・ステージング」データセットのフィールドの名前がリコンシリエーション・ステージングの子データセットで使用されていないことを確認してください。
リコンシリエーション一致のキー・フィールドを指定するには、「リコンシリエーション・ステージング」データセットの一意のフィールドと「OIM - アカウント」データセットの「ID」フィールドの間に一致のみのマッピングを作成します。IDフィールドに加えて、「OIM - アカウント」データセットの他のフィールドを「リコンシリエーション・ステージング」データセットの対応するフィールドに(一致のみで)マップして、リコンシリエーション一致のコンポジット・キー・フィールドを作成できます。
注意: 一致のみのマッピングで使用された「リコンシリエーション・ステージング」フィールドの名前がリコンシリエーション・ステージングの子データセットのフィールド名として再利用されると、リコンシリエーション実行時に一致が行われません。 この既知の問題については、コネクタ構成の変更ページの項で説明しています。 |
エンドツーエンド・マッピングの作成: フィールドを追加している場合に、フィールドの追加先のデータセットの右側に表示されるすべてのデータセットにも同じフィールドを追加するには、このチェック・ボックスを選択します。
複数値フィールド: 子データセットを追加する場合は、このチェック・ボックスを選択します。このチェック・ボックスを選択すると、「フィールド名」フィールドで指定する名前が子データセットの名前として使用されます。
注意: 「ステップ1: 基本情報の指定」ページで「信頼できるソース・リコンシリエーション」チェック・ボックスを選択した場合、このチェック・ボックス(選択または選択解除の状態)は無視されます。これは、信頼できるソース・リコンシリエーションでは、複数値(子)データのリコンシリエーションがサポートされていないためです。 |
データ型: フィールドのデータ型を選択します。
メタデータの検出後は、「リコンシリエーション・ステージング」および「OIM - アカウント」データセットのすべてのフィールドにStringデータ型がデフォルトで適用されます。状況によっては、「データ型」リストを使用して各フィールドの実際のデータ型を指定する必要があります。
長さ: フィールドの文字の長さを指定します。
必須: フィールドに値が常に入力されるようにするには、このチェック・ボックスを選択します。
暗号化: フィールドの値を暗号化形式でOracle Identity Managerデータベースに格納する必要がある場合は、このチェック・ボックスを選択します。
パスワード・フィールド: フィールドの値をプロセス・フォームで暗号化する必要がある場合は、このチェック・ボックスを選択します。このチェック・ボックスを選択したフィールドの値は、アスタリスク(*)としてプロセス・フォームに表示されます。
「続行」をクリックします。
「ステップ1: フィールド情報」ページで「参照フィールド」チェック・ボックスを選択すると、「ステップ2: 参照プロパティ」ページが表示されます。このページでは、表21-4に記載されている参照プロパティの任意の組合せの値を選択および指定できます。
表21-4 参照プロパティ
参照プロパティ | 値 |
---|---|
列名 |
「プロパティ値」フィールドに、参照ウィンドウでの表示が必要な値を格納するデータベース列の名前を入力します。必要に応じて、複数のデータベース列名をカンマで区切って入力できます。 注意: 「参照列名」プロパティを選択する場合は、この「列名」プロパティも選択する必要があります(「参照列名」プロパティについてはこの表で後述します)。 「プロパティ値」フィールドに値を入力したら、「送信」をクリックします。 次のSQLクエリを使用すると、「列名」および「参照列名」プロパティの使用方法を示すことができます。 SELECT USR_FIRST_NAME, USR_LOGIN, USR_LAST_NAME FROM USR この2つのプロパティの値を次のように設定したとします。 - 列名: - 参照列名: このユーザーが |
列見出し |
「プロパティ値」フィールドに、参照ウィンドウでの表示が必要な列ヘッダーの名前を入力します。参照ウィンドウに複数の列を表示する場合は、カンマで区切った複数の列見出しを入力します(例: 組織名,組織ステータス)。 「プロパティ値」フィールドに値を入力したら、「送信」をクリックします。 |
列幅 |
「プロパティ値」フィールドに、参照ウィンドウでの表示が必要な列の文字幅を入力します。この値は、データ値を抽出して参照フィールドに移入するための基礎となるフィールドまたは列の最大長と同じにする必要があります。 参照ウィンドウに複数の列を表示する場合は、カンマで区切った複数の列幅を入力します。 「プロパティ値」フィールドに値を入力したら、「送信」をクリックします。 |
参照問合せ |
「参照問合せ」プロパティの値を指定するには、次の手順を実行します。
問合せから戻されるデータを正しく表示するには、 たとえば、次のSQL問合せについて考えます。 SELECT usr_status FROM usr この問合せから戻されるデータを表示するには、 lookupfield.header.users.status=User Status 指定した問合せの
lookupfield.header.column_code=display value
このエントリの デフォルトでは、参照フィールドの列ヘッダーとして次のエントリを lookupfield.header.lookup_definition.lookup_code_information .code_key=Value lookupfield.header.lookup_definition.lookup_code_information .decode=Description lookupfield.header.users.manager_login=User ID lookupfield.header.organizations.organization_name=Name lookupfield.header.it_resources.key=Key lookupfield.header.it_resources.name=Instance Name lookupfield.header.users.user_id=User ID lookupfield.header.users.last_name=Last Name lookupfield.header.users.first_name=First Name lookupfield.header.groups.group_name=Group Name lookupfield.header.objects.name=Resource Name lookupfield.header.access_policies.name=Access Policy Name |
参照コード |
「プロパティ値」フィールドに、参照定義コード名を入力します。このコードは、参照値や参照値の選択時に参照フィールドに表示されるテキストなど、参照フィールドに関する全情報を生成します。参照定義コードの分類タイプは参照タイプである必要があります(つまり、「参照定義」フォームで参照タイプオプションを選択する必要があります)。 参照コードを入力するには、「参照定義」フォームを開いて必須コードの問合せを実行し、そのコードを「プロパティ値」フィールドにコピーします。 「プロパティ値」フィールドに値を入力したら、「送信」をクリックします。 注意: 「参照コード」プロパティを使用すると、「列見出し」、「列名」、「列幅」、「参照列名」、「名前」、「参照問合せ」の各プロパティの組合せを置き換えることができます。さらに、「参照コード」プロパティで指定されている情報は、これらの5つの参照プロパティで設定されている値よりも優先されます。 参照フィールド・リコンシリエーションを実行する場合は、参照コードへの移入を行うスケジュール済タスクを作成します。 |
参照列名 |
「プロパティ値」フィールドに、参照ウィンドウでユーザーが選択した「列名」値に対応する値を格納するデータベース列の名前を入力します。必要に応じて、複数のデータベース列名をカンマで区切って入力できます。 注意: 「列名」プロパティを選択する場合は、この「参照列名」プロパティも選択する必要があります。これらの2つのプロパティの使用方法については、この表の「参照列名」行を参照してください。 「プロパティ値」フィールドに値を入力したら、「送信」をクリックします。 |
オートコンプリート |
「プロパティ値」フィールドに 参照フィールド値表示のユーザーによるフィルタ処理を許可しない場合は、「プロパティ値」に 「オートコンプリート」プロパティのデフォルト値は 「プロパティ値」フィールドに値を入力したら、「送信」をクリックします。 |
「ステップ2: 参照プロパティ」ページの表に表示されているプロパティの値を編集するには、そのプロパティの編集オプションを選択して「編集」をクリックします。この表に表示されているプロパティを削除するには、そのプロパティの削除オプションを選択して「削除」をクリックします。
参照フィールドのプロパティの指定が完了したら、「続行」をクリックします。
「ステップ1: フィールド情報」ページの「アクションのマッピング」リストで変換オプションを選択すると、「ステップ3: マッピング」ページが表示されます。このページを使用して、追加するフィールドの入力データに対して実行する変換機能を定義します。実行する手順は、前のページで選択した変換プロバイダのオプション(連結、翻訳またはカスタム変換プロバイダ)によって異なります。
事前定義済の変換プロバイダ(変換、連結または翻訳)を選択する場合、事前定義済の変換プロバイダのパラメータ値の指定方法の詳細は、「変換プロバイダ」を参照してください。この項でも、ユーザー・アカウント・ステータスのリコンシリエーションの構成について詳しく説明しています。
ユーザー・アカウント・ステータス情報のリコンシリエーションを構成する場合は、翻訳変換プロバイダを使用する必要があります。この手順は、第19.5.2項「翻訳変換プロバイダ」で説明しています。
変換プロバイダの値の指定が完了したら、「続行」をクリックします。
必要な場合は、フィールドの検証チェックを選択して「追加」をクリックします。 つまり、使用する検証プロバイダを選択します。
このリストの検証オプションは、事前定義された検証プロバイダと作成したカスタム検証プロバイダに基づいて表示されます。
「続行」をクリックし、「閉じる」をクリックします。
「ステップ3: コネクタ構成の変更」ページで他のアクションを実行しない場合は、このページの上部にある「閉じる」ボタンをクリックします。この「閉じる」ボタンをクリックするには、その前の手順を実行しておく必要があります。
データセットからフィールドを削除するには、次の手順を実行します。
そのフィールドの「削除」アイコンをクリックします。
「ステップ3: コネクタ構成の変更」ページで他のアクションを実行しない場合は、このページの上部にある「閉じる」ボタンをクリックします。
マッピングを削除するには、次の手順を実行します。
削除するマッピングの宛先フィールドで編集アイコンをクリックします。
注意: この宛先フィールドが別のマッピングのソース・フィールドである場合、そのマッピングは削除されません。 |
「ステップ1: フィールド情報」ページの「変換」リストから「マッピングの削除」を選択します。
「続行」をクリックします。
最後のページで「閉じる」をクリックします。
「ステップ3: コネクタ構成の変更」ページで他のアクションを実行しない場合は、このページの上部にある「閉じる」ボタンをクリックします。
子データセットを削除するには、次の手順を実行します。
そのデータセットの「削除」アイコンをクリックします。
「ステップ3: コネクタ構成の変更」ページで他のアクションを実行しない場合は、このページの上部にある「閉じる」ボタンをクリックします。
図21-6は、「OIM - アカウント」データセットおよび「プロビジョニング・ステージング」データセットにMyField
フィールドを追加した後の「ステップ3: コネクタ構成の指定」ページを示しています。
このページを使用して、「OIM - アカウント」データセットとその子データセットに対応するプロセス・フォームのフォーム名を指定します。
注意: 「ステップ1: 基本情報の指定」ページで「信頼できるソース・リコンシリエーション」オプションを選択した場合、「OIM - アカウント」データセットとその子データセットは作成されません。そのため、「信頼できるソース・リコンシリエーション」オプションを選択すると、このページは表示されません。 |
汎用テクノロジ・コネクタの作成に必要な情報をすべて送信すると、汎用テクノロジ・コネクタ・フレームワークによって特定のオブジェクトが自動的に作成されます。自動作成されるオブジェクトの例として、「OIM - アカウント」データセットに対応する親と子のプロセス・フォームがあります。特定のOracle Identity Managerインストールの各プロセス・フォームは、一意の名前を必要とします。
「ステップ4: コネクタ・フォーム名の検証」ページでは、汎用テクノロジ・コネクタ・フレームワークにより、対応するデータセットの名前に基づくプロセス・フォームのデフォルト名が表示されます。これらのフォーム名を検証し、必要な場合は、このOracle Identity Managerインストールで一意になるようにフォーム名を変更します。フォーム名の変更には、ASCII文字のみを使用する必要があります。一意でないフォーム名や非ASCII文字を含む名前を指定すると、エラー・メッセージが表示されます。
注意: このページに戻ることはできません。そのため、指定したフォーム名が要件をすべて満たしていることを確認してから「続行」をクリックしてください。 |
フォーム名の指定が完了したら、「続行」をクリックします。
「続行」をクリックするかわりに、「戻る」をクリックして「ステップ2: パラメータ値の指定」ページに戻ることもできます。ただし、このページで変更を加えて「続行」ボタンをクリックしても、メタデータの検出は行われません。これは、このページの最初のパススルーで実行したデータセット構造とマッピングのカスタマイズが上書きされないようにするためです。「ステップ3: コネクタ構成の変更」ページでは、フィールドおよびマッピングを手動で追加または編集できます。
図21-7は、「ステップ4: コネクタ・フォーム名の検証」ページを示しており、ここには第21.2.4.1項「ステップ1: 基本情報の指定」ページと第21.2.4.2項「ステップ2: パラメータ値の指定」ページの最後にリストされるエントリ、および第21.2.4.3項「ステップ3: コネクタ構成の変更」の最後の変更内容が記載されています。
このページを使用して、この時点までに指定した汎用テクノロジ・コネクタの作成に関する情報を確認します。これ以降は、既述ページで許可されている変更についてページごとに説明します。
「表示」リンクまたは「戻る」ボタンを使用すると、「ステップ1: 基本情報の指定」ページで指定した情報を再度表示して確認できます。この情報を変更すると新しい汎用テクノロジ・コネクタを作成することになるため、このページに表示される情報は変更できません。
「変更」リンクまたは「戻る」ボタンを使用すると、このページを再度表示できます。このページではパラメータ値を変更できます。ただし、変更した値を送信しても、メタデータの検出は行われません。これは、このページの最初のパススルーで実行したデータセット構造とマッピングのカスタマイズが上書きされないようにするためです。「ステップ3: コネクタ構成の変更」ページでは、フィールドおよびマッピングを手動で追加または編集できます。
「変更」リンクを使用すると、このページを再度表示してフィールドやマッピングを追加または編集できます。
このページに戻ることはできません。
「ステップ5: コネクタ情報の検証」ページに表示されている情報をすべて検証したら、「作成」をクリックします。
この段階で、汎用テクノロジ・コネクタ・フレームワークにより、指定した情報に基づいてすべての標準コネクタ・オブジェクトが作成されます。これらのオブジェクトのリストには、自動的に作成され、Oracle Identity ManagerにインポートされるコネクタXMLファイルが含まれます。フォーム名を除き、コネクタ・オブジェクトの名前はGTCname
_GTC
の形式になります。
たとえば、作成する汎用テクノロジ・コネクタの名前としてDB_conn
を指定すると、すべてのコネクタ・オブジェクト(フォーム以外)の名前はDB_CONN_GTC
となります。
プロセスの最後に、コネクタが正常に作成されたことを通知するメッセージがこのページに表示されます。
注意: 作成プロセスに失敗しても、作成されるオブジェクトは自動的に削除されません。この点については、第22.1.1項「作成の問題」にも記載されています。 作成プロセスに関連するエラー・メッセージのリストについては、第22.2.3項「コネクタ作成中のエラー」を参照してください。 |
図21-8は、「ステップ5: コネクタ情報の検証」ページの最初のセクションを示しており、ここには、第21.2.4.1項「ステップ1: 基本情報の指定」ページと第21.2.4.2項「ステップ2: パラメータ値の指定」ページの最後にリストされるエントリ、および第21.2.4.3項「ステップ3: コネクタ構成の変更」ページの最後の変更内容が記載されています。
図21-9は、「ステップ5: コネクタ情報の検証」ページの2番目のセクションを示しており、ここには、第21.2.4.1項「ステップ1: 基本情報の指定」ページと第21.2.4.2項「ステップ2: パラメータ値の指定」ページの最後にリストされるエントリ、および第21.2.4.3項「ステップ3: コネクタ構成の変更」ページの最後の変更内容が記載されています。
注意: 「ステップ1: 基本情報の指定」ページで「プロビジョニング」オプションのみを選択した場合は、リコンシリエーションの構成が不要のため、このセクションをスキップできます。 |
リコンシリエーションのスケジュール済タスクは、汎用テクノロジ・コネクタの作成時に自動的に作成されます。このスケジュール済タスクを構成して実行するには、Oracle Fusion Middleware Oracle Identity Manager管理者ガイドのスケジュール済タスクの作成と管理の手順に従います。
注意: スケジュール済タスクの名前は次の形式になります。
たとえば、汎用テクノロジ・コネクタの名前が |
注意: 「ステップ1: 基本情報の指定」ページで「リコンシリエーション」オプションのみを選択した場合は、プロビジョニングの構成が不要のため、この項をスキップできます。 |
プロセス定義は、汎用テクノロジ・コネクタの作成時に自動的に作成されるオブジェクトの1つです。プロセス定義の名前は次の形式になります。
GTC_name
_GTC
たとえば、汎用テクノロジ・コネクタの名前がWebConn
である場合、プロセス定義の名前はWebConn_GTC
となります。
このプロセス定義を構成するプロセス・タスクには、次の2種類があります。
システム定義プロセス・タスク
システム定義プロセス・タスクは、新規に作成されるすべてのプロセス定義にデフォルトで含まれます。
プロビジョニング固有のプロセス・タスク
プロビジョニング固有のプロセス・タスクは、「リコンシリエーション」オプションの選択に関係なく、「ステップ1: 基本情報の指定」ページで「プロビジョニング」オプションを選択した場合にのみ、汎用テクノロジ・コネクタのプロセス定義に含まれます。
次に、プロビジョニング固有のプロセス・タスクを示します。
ユーザーの作成
ユーザーの削除
ユーザーの有効化
ユーザーの無効化
更新されたField_Name(このタスクはID
フィールドを除く、「OIM - アカウント」データセットの各フィールドに対して作成されます。)
「OIM - ユーザー」データセットと「プロビジョニング・ステージング」データセットのフィールド間で作成されたマッピングでは、次のプロセス・タスクが作成されます。
User_data_set_field_nameの変更
Provisioning_Staging_field_nameの編集
たとえば、「OIM - ユーザー」データセットの「姓」フィールドと「プロビジョニング・ステージング」データセットの「LName」フィールドの間のマッピングを作成したとします。プロビジョニング固有のその他のプロセス・タスクとともに、次のプロセス・タスクが自動的に作成されます。
姓の変更
LNameの編集
さらに、次のプロビジョニング固有のプロセス・タスクが「OIM - アカウント」データセットの子データセットごとに作成されます。
子表のChild_Form_Name行の挿入
子表のChild_Form_Name行の更新
子表のChild_Form_Name行の削除
すべてのプロビジョニング固有のプロセス・タスクには、次のデフォルト割当てがあります。
ターゲット・タイプ: Group User With Highest Priority
グループ: SYSTEM ADMINISTRATORS
ユーザー: XELSYSADM
これらのデフォルトの割当ては、必要に応じて、「プロセス・タスクの変更」の手順に従って変更できます。
注意: このステップはオプションです。この項で説明した手順は、汎用テクノロジ・コネクタのロギングを有効化する場合にのみ実行してください。 |
Oracle Identity Managerのロギングの有効化の詳細は、Oracle Fusion Middleware Oracle Identity Manager管理者ガイドのシステム・ロギングの有効化に関する説明を参照してください。
汎用テクノロジ・コネクタのフレームワークには、汎用テクノロジ・コネクタを変更できる機能が用意されています。また、デプロイメント・マネージャを使用して、汎用テクノロジ・コネクタのエクスポートまたはインポートが可能です。
この項は次のトピックで構成されています。
注意: 汎用テクノロジ・コネクタの作成プロセスの最後に自動的に作成されるコネクタ・オブジェクトは、Design Consoleを使用して変更できます。Design Consoleでこの汎用テクノロジ・コネクタのコネクタ・オブジェクトがカスタマイズされている場合に、「汎用テクノロジ・コネクタの管理」機能を使用して汎用テクノロジ・コネクタを変更すると、Design Consoleを使用して行われたすべてのカスタマイズが上書きされます。そのため、次のガイドラインのいずれかを適用することをお薦めします。
フレームワークによって自動的に作成されるコネクタ・オブジェクトの詳細は、第18.4項「汎用テクノロジ・コネクタ・フレームワークで作成されるコネクタ・オブジェクト」を参照してください。 また、同時に変更できるコネクタは1つのみです。同じコンピュータ上で、2つの異なるコネクタに「変更」ページを同時に使用しようとすると、「変更」機能が正しく動作しません。 これらの点については、付録22「汎用テクノロジ・コネクタのトラブルシューティング」を参照してください。 |
汎用テクノロジ・コネクタを変更するには、次の手順を実行します。
管理およびユーザー・コンソールにログインします。
「拡張」をクリックします。
「構成」の下で、「汎用コネクタの管理」をクリックします。
変更するコネクタを検索します。検索を容易にするため、このページで提供される検索条件を組み合せることができます。また、このOracle Identity Managerのインストールで作成されたすべての汎用テクノロジ・コネクタを表示するには、検索条件を指定せずに「コネクタの検索」をクリックします。
表示される結果から、変更する汎用テクノロジ・コネクタをクリックします。
「パラメータの編集」をクリックします。コネクタ作成プロセスの「ステップ2: パラメータ値の指定」ページが表示されます。これ以降は、「ステップ2」の項に記載されている手順に従ってください。
注意: 「OIM - アカウント」データセットまたはその子データセットのフィールド属性を変更する場合、これらのデータセットについて、Oracle Identity Managerデータベース・エントリで対応する変更は加えられません。また、エラー・メッセージも表示されません。 そのため、Oracle Identity Managerのこのリリースに対しては、「OIM - アカウント」データセットのフィールドや子データセットを変更しないことをお薦めします。 この点については、第22.2.2項「「ステップ3: コネクタ構成の変更」ページ」にも記載されています。 |
汎用テクノロジ・コネクタのXMLファイルはエクスポートできます。このXMLファイルには、コネクタを構成するすべてのオブジェクトの定義が含まれています。新しくOracle Identity Managerをインストールする際に同じ汎用テクノロジ・コネクタを使用する場合、まずXMLファイルをエクスポートし、これを新しいOracle Identity Managerインストールにインポートします。
コネクタのXMLファイルをエクスポートするには、次の手順を実行します。
Oracle Identity Manager拡張管理で、「システム管理」の下の「デプロイメント・マネージャ・ファイルのエクスポート」をクリックします。
デプロイメント・マネージャ・ウィザードの最初のページで、リストから「汎用コネクタ」を選択し、「検索」をクリックします。
検索結果から、XMLファイルをエクスポートする汎用テクノロジ・コネクタを選択します。
「子の選択」をクリックします。
選択した汎用テクノロジ・コネクタに対して、エクスポートする子エンティティを選択し、「依存性の選択」をクリックします。
エクスポートする依存性を選択し、「確認」をクリックします。
ページに表示された要素がエクスポートの要件を満たしていることを確認したら、「エクスポート用に追加」をクリックします。
「ウィザードを終了し、すべての選択を表示します」をクリックし、続いて「OK」をクリックします。
汎用テクノロジ・コネクタを別のOracle Identity Managerのインストールにコピーするには、次の手順を実行します。
コネクタがカスタム・プロバイダを使用する場合、プロバイダ作成中に作成されたファイルをコピー先となるOracle Identity Managerインストール上の適切なディレクトリにコピーする必要があります。
コピー元となるOracle Identity Managerインストール上で、コネクタXMLファイルをエクスポートします。
コピー先となるOracle Identity Managerインストール上で、コネクタXMLファイルをインポートします。
注意: ステージング・サーバー上の汎用テクノロジ・コネクタおよびそれを構成するオブジェクト用に選択する名前は、本番サーバー上の既存のコネクタやオブジェクトの名前と競合しないようにする必要があります。 次のシナリオで、このガイドラインの順守が必要な理由を説明します。 ステージング・サーバー上で汎用テクノロジ・コネクタを作成し、このコネクタを本番サーバーにインポートするとします。ステージング・サーバー上で汎用テクノロジ・コネクタを作成する際、汎用テクノロジ・コネクタおよびコネクタ・オブジェクトの名前がそのサーバー上で一意であることを確認します。同時に、これらの名前が本番サーバーのコネクタおよびコネクタ・オブジェクトの名前と同じではないことも確認する必要があります。 同じ名前がある場合は、コネクタXMLファイルをステージング・サーバーから本番サーバーへインポートする際、古いオブジェクトが新しいオブジェクトによって上書きされます。上書き処理中はメッセージが表示されないため、該当するコネクタが最終的に失敗します。 これについては、第22.2.1項「汎用テクノロジ・コネクタおよびコネクタ・オブジェクトの名前」でも説明しています。 オブジェクトが上書きされたとき、正常に機能する状態に戻せるようにするには、コネクタXMLファイルをインポートする前に、インポート先のOracle Identity Managerデータベースのバックアップを取得する必要があります。 |
コネクタのXMLファイルをインポートするには、次のようにします。
Oracle Identity Manager拡張管理で、「システム管理」の下のデプロイメント管理ファイルのインポートをクリックします。ファイルを検索するダイアログ・ボックスが表示されます。
コネクタXMLファイルのコピー先ディレクトリから、このファイルを検索して開きます。
「ファイルの追加」をクリックします。
「次へ」→「次へ」→「スキップ」とクリックします。
「選択内容の表示」をクリックします。
コネクタXMLファイルの内容が「インポート」ページに表示されます。複数のノードのある十字のアイコンが表示される場合があります。これらのノードは、冗長なOracle Identity Managerエンティティを示しています。コネクタXMLファイルをインポートする前に、ノードごとに右クリックし、「削除」を選択してこれらのエンティティを削除する必要があります。
「インポート」をクリックします。コネクタのファイルがOracle Identity Managerにインポートされます。
コネクタXMLファイルをインポートした後、汎用テクノロジ・コネクタのランタイム・パラメータを更新する必要があります。
注意: これらの値は、コネクタXMLファイルをエクスポートしても、そこにはコピーされません。 |
ランタイム・パラメータの値を更新するには、第21.5.7項「汎用テクノロジ・コネクタの変更」で説明する手順を実行してください。
カスタム・コネクタで、接続プーリングのニーズに対して汎用接続プール・フレームワーク(GCPとも呼ばれる)の使用を選択できます。
内部的に、汎用接続プール・フレームワークではOracleユニバーサル接続プール(UCP)をデフォルトの接続プーリング・メカニズムとして使用します。汎用接続プールをカスタム・コネクタで使用する基本的な手順は次のとおりです。
ResourceConnection
インタフェースの具体的な実装を指定します。
実装には、デフォルト・コンストラクタ(パラメータなし)も必要です。
ITResource定義で追加のフィールドを定義します。
汎用接続プールを呼び出し、プールから接続を取得およびリリースします。
このセクションの内容は次のとおりです。
接続プールでは、ResourceConnection
の具体的な実装を使用して、接続の作成とクローズ、およびターゲットへの接続の検証が行われます。そのため、この具体的な実装クラスがJavaTasks
フォルダの下でjarファイルとして使用できることを確認する必要があります。
表21-5に、ResourceConnection
の主要メソッドの説明を示します。
表21-5 ResourceConnectionのメソッド
メソッド | 説明 |
---|---|
Create Connection |
このメソッドは、(接続の初期数を作成するために)プールの初期化中、および必要に応じてプールのライフサイクル・イベントに対して呼び出されます。 このメソッドは、ターゲットへの実際の物理接続である |
Close Connection |
このメソッドは、プールのライフサイクル・イベントの過程で接続をクローズする必要がある場合にプールによって呼び出されます。 |
Heartbeat |
このメソッドは、ターゲットへの接続のTCPハートビート(またはTCPキープアライブ)を維持するために使用されます。このメソッドにより、接続がターゲット側からタイムアウトしないように、TCP接続が維持されます。 |
Validate |
このメソッドは、接続がまだ有効であるかどうかを示す このメソッドは、「流用時の接続の検証」が このメソッドが |
表21-6に、適切な値を指定する必要があるその他のITResource
パラメータを示します。
表21-6 ITResourceパラメータ
フィールド | 説明 | サンプル値および注意 |
---|---|---|
中止した接続のタイムアウト |
中止した接続の接続タイムアウト(秒)。タイムアウトの経過後、接続は再要求されます。 |
900 |
接続待機タイムアウト |
接続の確立を待機する時間(秒)。 |
60 |
非アクティブ接続タイムアウト |
プール内のアイドル状態の非アクティブ接続の接続タイムアウト(秒)。注意: これらは流用された接続ではありません。 |
300 |
初期プール・サイズ |
プール内の接続の初期数。 |
3 |
最大プール・サイズ |
プールで作成できる接続の最大数。 |
30 |
最小プール・サイズ |
プールで保持する必要がある接続の最小数。 |
2 |
貸出し時の接続の検証 |
接続を検証する必要があるかどうかを示します。詳細は、表21-5を参照してください。 |
trueまたはfalse |
タイムアウト・チェック間隔 |
タイムアウト・プロパティをチェックする頻度(秒)。 |
30 |
プール・プリファレンス |
優先されるプーリング・メカニズムを示します。デフォルトのプール実装はUCPです。 |
デフォルト(UCPの場合)。ネイティブ(ネイティブ実装の場合) |
接続プーリングをサポート |
プーリングがサポートされるかどうかを示します。プーリングがサポートされない場合、返される接続はプールされた接続ではありません。デフォルト(推奨)は |
trueまたはfalse |
ターゲットで1つの接続のみをサポート |
ターゲット・システムで一度に1つの接続のみがサポートされるかどうかを示します。trueに設定すると、他のプロパティに関係なく、次のプール・パラメータが使用されます。
デフォルト(推奨)は |
ターゲットで1つの接続のみが処理される場合は |
ResourceConnectionクラス定義 |
|
|
ネイティブ接続プール・クラス定義 |
GenericPoolを実装するネイティブ・プール・メカニズムのラッパー。「プール・プリファレンス」が |
|
プール除外フィールド |
接続の作成に不要なフィールドのカンマ区切りのリスト。指定したいずれかのフィールドが更新された場合には、GCPプールはリフレッシュされません。 注意: このリストのフィールドは、 |
|
次の点に注意してください。
Design ConsoleからITResource
パラメータを更新しても、プールはリフレッシュされません。管理およびユーザー・コンソール、またはAPIを介して値を更新してください。
プールが使用されているときは値を更新しないでください。
汎用接続プールのコンシューマは、ConnectionServiceを呼び出して、ターゲットへのプールされた接続を取得し、プールに接続を戻すことができます。
このサンプル・コードは、ITResource名に基づいてプールから接続を取得し、戻します。
import com.oracle.oim.gcp.exceptions.ConnectionServiceException; import com.oracle.oim.gcp.pool.ConnectionService; import com.oracle.oim.gcp.resourceconnection.ResourceConnection; public class ConnectionPoolClient { public void testConnection(String itResName) { try{ //Request for connection from the connection pool ConnectionService service = new ConnectionService(); ResourceConnection myConnection = service.getConnection(itResName); //"myConnection" is the connection //use the connection... //Release connection back to the connection pool //Connections should always be returned this way. service.releaseConnection(myConnection); } catch(ConnectionServiceException e) { //handle } }
ITResourceキーを使用して、ターゲットへの接続をリクエストすることもできます。次に例を示します。
ConnectionService service = new ConnectionService(); ResourceConnection myConnection = service.getConnection(itResourceKey);
この項で前述したように、カスタム・コネクタにいずれかのサード・パーティ・プールを使用できます。ただし、前述の手順に加えて、サード・パーティ・プールのラッパーとしてGenericPoolインタフェースの具体的な実装を指定する必要があります。
注意: カスタム・コネクタでUCPプールを使用しない場合、カスタム・コネクタではネイティブ・オプションでGCPの使用を選択できますが、この選択に大きな利点はありません。ネイティブ・プール・プリファレンスでは、プールの維持と実装はカスタム・コネクタによって行われます。 |
表21-7に、GenericPoolインタフェースの呼び出されるメソッドを示します。
表21-7 GenericPoolインタフェースのメソッド
メソッド | 目的 |
---|---|
initializePool(PoolConfiguration poolConfig) |
プールを初期化します。PoolConfigurationデータ・オブジェクトには、すべてのプール関連のパラメータが含まれます。 |
borrowConnectionFromPool() |
接続をリクエストします。 |
returnConnectionToPool(ResourceConnection resConn) |
接続をプールへ返します。 |
refreshPool(PoolConfiguration newPoolConfig) |
更新された値でプールをリフレッシュします。 |
destroyPool() |
プールを削除します(ITResourceが削除された場合など)。 |
次の例は、ResourceConnection
インタフェースの実装を示しています。主要メソッドは強調表示されています。
例21-1 ResourceConnection実装の例
/** * Sample implementation for Socket Connections: */ import java.io.IOException; import java.net.InetSocketAddress; import java.net.Socket; import java.net.SocketException; import java.net.UnknownHostException; import com.oracle.oim.gcp.exceptions.ResourceConnectionCloseException; import com.oracle.oim.gcp.exceptions.ResourceConnectionCreateException; import com.oracle.oim.gcp.exceptions.ResourceConnectionValidationxception; import com.oracle.oim.gcp.resourceconnection.ResourceConnection; public class SocketResourceConnectionImpl extends Socket implements ResourceConnection { public SocketResourceConnectionImpl() { super(); } /** * Sample: Concrete implementation for closing a socket connection */ public void closeConnection() throws ResourceConnectionCloseException{ if(!this.isClosed()){ try { this.close(); } catch (IOException e) { throw new ResourceConnectionCloseException("[Client ResourceConnection implementation] Failed to close socket connection! "); } } } /** * Sample : Concrete implementation for creating a socket connection. * The return value is the actual physical socket connection * */ public ResourceConnection createConnection(HashMap itResInfoMap) throws ResourceConnectionCreateException { ResourceConnection r = null; SocketResourceConnectionImpl i = new SocketResourceConnectionImpl(); try { //HashMap has all ITResource related information that is needed //for connecting to target. String serverAddress= ((String) itResInfoMap.get ("Server Address")).trim(); //utility method getIntValue returns an int for a String int port = getIntValue(((String)itResInfoMap.get("Port")).trim()); System.out.println("Connecting to Socket with IP Address " + serverAddress+" at port "+ port); InetSocketAddress inet = new InetSocketAddress(serverAddress,port); i.connect(inet); if(!i.isConnected()){ throw new ResourceConnectionCreateException (" Failed to create socket: connection failure"); } r = (ResourceConnection)i; } catch (UnknownHostException e) { throw new ResourceConnectionCreateException(" [Client ResourceConnection implementation] Failed to create socket connection!", e); } catch (IOException e) { throw new ResourceConnectionCreateException(" [Client ResourceConnection implementation] Failed to create socket connection! ",e); } return r; } /** * Sample : Concrete implementation for heartbeat of a socket connection */ public void heartbeat() throws ResourceConnectionValidationxception { try { this.setKeepAlive(true); } catch (SocketException e) { throw new ResourceConnectionValidationxception ("[Client ResourceConnection implementation] Failed to set heartbeat "); } } /** * Sample: Concrete implementation for validating connection */ public boolean isValid() { if(this.isBound()){ return true; }else{ return false; } } }
この項は次のトピックで構成されています。
汎用テクノロジ・コネクタの名前を指定する場合は次のガイドラインを適用します。
サマリー:
名前にはASCII文字のみを使用するようにします。アンダースコア(_)文字は使用できますが、それ以外の非ASCII文字は名前に使用しないでください。
説明:
コネクタ作成プロセスの終了時に自動的に作成されるコネクタ・オブジェクトの大部分では、オブジェクト自体の名前の一部に汎用テクノロジ・コネクタの名前が使用されます。たとえば、汎用テクノロジ・コネクタの名前がWebConn
である場合、スケジュール済タスクの名前はWebConn_GTC
となります。
Oracle Identity Managerデータベースでは、非ASCII文字の名前が指定されたオブジェクトを格納するプロビジョニングは実行されません。そのため、汎用テクノロジ・コネクタの名前を指定するときに非ASCII文字を入力すると、エラー・メッセージが表示されます。
Oracle Identity Managerインストールで使用されているコネクタまたはコネクタ・オブジェクトの名前と同じ名前を指定しないでください。
ステージング・サーバー上で汎用テクノロジ・コネクタを作成して本番サーバーに移動する場合は、汎用テクノロジ・コネクタの名前が本番サーバー上の既存のコネクタまたはコネクタ・オブジェクトの名前と競合しないようにしてください。
ステージング・サーバー上に作成した汎用テクノロジ・コネクタを本番サーバーにインポートする前には、宛先のOracle Identity Managerデータベースのバックアップを作成して、コネクタ・オブジェクトが上書きされた場合に作業状態に戻れるようにしてください。
共有ドライブ・トランスポート・プロバイダを選択する場合は、CSVフォーマット・プロバイダを選択する必要があります。
SPMLプロビジョニング・フォーマット・プロバイダを選択する場合は、Webサービス・プロビジョニング・トランスポート・プロバイダを選択する必要があります。
共有ドライブ・リコンシリエーション・トランスポート・プロバイダを選択する場合は、リコンシリエーション用にターゲット・システムから提供される親データおよび子データのファイルにおいて、少なくとも最初の2行に所定のフォーマットのデータがあることを確認してください。データの所定のフォーマットの詳細は、第19.1項「共有ドライブ・リコンシリエーション・トランスポート・プロバイダ」で説明しています。
共有ドライブ・リコンシリエーション・トランスポート・プロバイダを選択する場合は、リコンシリエーションの開始前に、ステージング・ディレクトリおよびアーカイブ・ディレクトリに必要な権限が設定されていることを確認してください。必要な権限の詳細は、「ステージング・ディレクトリとアーカイブ・ディレクトリに設定する権限」で説明しています。
一度に複数の汎用テクノロジ・コネクタを作成しようとしないでください。同じOracle Identity Managerインストールの管理およびユーザー・コンソールで、別のセッションから作成する場合も同様です。
ここでは、「ステップ2: パラメータ値の指定」ページで指定する入力に関する既知の問題について説明します。
サマリー:
共有ドライブ・リコンシリエーション・トランスポート・プロバイダを使用する場合、次の点に注意します。
ステージング・ディレクトリとアーカイブ・ディレクトリに同じパスを指定しないでください。両方のディレクトリに同じパスを指定すると、アーカイブ・ディレクトリの既存のファイルが削除されます。
ステージング・ディレクトリ内のファイルの名前が、アーカイブ・ディレクトリ内のファイルの名前と異なるようにしてください。ファイル名が同一になると、アーカイブ・ディレクトリ内の既存のファイルがリコンシリエーション実行の終了時に上書きされます。
説明:
共有ドライブ・リコンシリエーション・トランスポート・プロバイダを使用する場合、各リコンシリエーション実行の後にデータファイルがステージング・ディレクトリからアーカイブ・ディレクトリに移動します。アーカイブ・ディレクトリに移動したファイルにタイムスタンプまたはマークは付きません。そのため、共有ドライブ・トランスポート・プロバイダの使用時には、次のガイドラインに注意してください。
指定するアーカイブ・ディレクトリのパスおよび名前は、ステージング・ディレクトリのパスおよび名前と同じものにしないでください。同じパスおよび名前を指定すると、アーカイブ・ディレクトリ内の既存のファイルがリコンシリエーション実行の終了時に削除されます。
現行のリコンシリエーション実行時に、最後のリコンシリエーション実行で使用されたファイルと同じ名前のデータファイルがステージング・ディレクトリに配置されていると、アーカイブ・ディレクトリ内の既存のファイルが、ステージング・ディレクトリからの新しいファイルで上書きされます。次に、この例を示します。
最後のリコンシリエーションの実行終了時に、ステージング・ディレクトリからアーカイブ・ディレクトリに次の各ファイルが自動的に移動したとします。
usrdataParentData.csv usrdataRoleData.csv usrdataGroupMembershipData.txt
現行のリコンシリエーションの実行用に、ステージング・ディレクトリに次の各ファイルを配置します。
usrdataParentData.csv usrdataRoleData_04Feb07.csv usrdataGroupMembershipData_04Feb07.txt
これらのファイルは、現行のリコンシリエーションの実行終了時にアーカイブ・ディレクトリに移動します。その際、古いusrdataParentData.csv
ファイルが新しいファイルで上書きされます。
そのため、アーカイブ・ディレクトリ内のファイルがリコンシリエーション実行の終了時に上書きされないようにするには、ステージング・ディレクトリ内のファイルの名前がアーカイブ・ディレクトリ内のファイルの名前と同一にならないようにする必要があります。
サマリー:
「ステップ2: パラメータ値の指定」ページに戻っても、2回目にはメタデータの検出は行われません。そのため、必要に応じて「ステップ3: コネクタ構成の変更」ページに表示されるフィールドおよびフィールド・マッピングを手動で変更する必要があります。
説明:
「ステップ2: パラメータ値の指定」ページで指定した値を変更するとします。このページには、「ステップ4: コネクタ・フォーム名の検証」ページまたは「ステップ5: コネクタ情報の検証」ページから戻れます。ただし、プロバイダ・パラメータ値を変更した後に「続行」ボタンをクリックしても、2回目にはメタデータの検出は行われません。これは、「ステップ3: コネクタ構成の変更」ページで手動で行われた可能性のある変更の保護を目的とした機能です。
この機能が適用されるため、既存の汎用テクノロジ・コネクタを変更しても、メタデータの検出は行われません。
ここでは、次の領域に関するベスト・プラクティスについて説明します。
フィールドの追加時または編集時にフィールド名を指定する場合、次の検証が適用されることに注意してください。
同じデータセット(親または子)に属する2つのフィールドには同じ名前を指定できません。
同じ親データセットの2つの子データセットには同じ名前を指定できません。
その2つの子データセットが同じ親データセットに属しているかどうかに関係なく、2つの異なる子データセットに同じ名前のフィールドをそれぞれ指定することは可能です。たとえば、UsrID
という名前のフィールドをGroupMembership
データセットとRole
データセットのそれぞれに指定できます。
2つの異なる親データセットに同じ名前のフィールドをそれぞれ指定することは可能です。同様に、これらのデータセットに同じ名前の子データセットをそれぞれ指定することも可能です。
子データセットの名前には、そのフィールドのいずれかと同じ名前を指定できます。
パスワードの安全性を確保するため、パスワード情報は汎用テクノロジ・コネクタでリコンサイルしないでください。つまり、「ソース」データセットおよび「リコンシリエーション・ステージング」データセットには「パスワード」フィールドが含まれないようにします。また、「リコンシリエーション・ステージング」データセットのフィールドを「OIM - ユーザー」データセットの「パスワード」フィールドにマップしないでください。
パスワード型フィールドは、「暗号化」属性および「パスワード・フィールド」属性を(「暗号化」チェック・ボックスおよび「パスワード・フィールド」チェック・ボックスを選択して)設定するフィールドです。「OIM - アカウント」データセットに追加するフィールドにこれらの2つの属性を設定すると、パスワード型フィールドを作成できます。
パスワード型フィールドの内容を保護するため、これらのフィールドの追加時または編集時には次のガイドラインに注意してください。
「パスワード・フィールド」チェック・ボックスおよび「暗号化」チェック・ボックスを使用すると、Oracle Identity Managerでのパスワード情報の表示および格納を保護できます。ただし、パスワード型フィールドを「プロビジョニング・ステージング」データセットのフィールドにマップする場合は、これらのフィールドに伝播されるデータを保護するため、必要なすべての予防措置をとってください。たとえば、このデータがプロビジョニング操作の終了時にターゲット・システムのプレーン・テキスト・ファイルに格納されないようにする必要があります。
「OIM - アカウント」データセットと「プロビジョニング・ステージング」データセットのパスワード・フィールド間には、1対1のマッピングのみ作成することをお薦めします。つまり、このパスワード・フィールドを、「プロビジョニング・ステージング」フィールドとの変換マッピングの入力フィールドとして使用しないようにしてください。「OIM - ユーザー」データセットの「パスワード」フィールドについても同様の予防措置をとる必要があります。
前述したとおり、「パスワード」フィールドは「OIM - ユーザー」データセットの事前定義済フィールドの1つです。このフィールドには「パスワード・フィールド」属性および「暗号化」属性が設定されます。Design Consoleを使用すると、作成するUDFに「パスワード・フィールド」属性および「暗号化」属性を設定できます。このように設定すると、新規作成されるUDFに既存の「パスワード」フィールドと同じプロパティが指定されます。ただし、汎用テクノロジ・コネクタ・フレームワークではこのフィールドは他のテキスト・フィールド(文字列データ型)と同様に扱われ、その内容は管理およびユーザー・コンソールまたはデータベースでは暗号化されません。
第22.1項「汎用テクノロジ・コネクタに関する一般的な問題」も参照してください。
「Oracle Identity Manager」データセットのフィールドを使用する場合は次のベスト・プラクティスに従います。
サマリー:
翻訳変換プロバイダを選択してマッピングを作成する場合、「参照コード名」リージョンに参照定義の名前を指定してください。データセット名およびフィールドを「参照コード名」リージョンに指定すると、実際のリコンシリエーションまたはプロビジョニングの操作時に変換に失敗します。
説明:
マッピングの作成時に翻訳変換プロバイダを選択すると、「ステップ2: マッピング」ページに、データセットからフィールドを選択してリテラルを指定するオプションが表示されます。翻訳変換プロバイダを使用しているため、「リテラル」オプションを選択して、変換用のコード・キーおよびデコードの値を含む参照定義の名前を入力する必要があります。「参照コード名」リージョンにデータセット名およびフィールドを選択しないでください。データセット名およびフィールドの選択を無効にする検証は行われませんが、実際のリコンシリエーションまたはプロビジョニングの操作時に変換操作に失敗します。
「OIM - アカウント」データセットのIDフィールドと、「リコンシリエーション・ステージング」データセットのレコードを一意に識別するフィールドとのマッピングを作成します。
IDフィールドに加えて、「OIM - アカウント」データセットの他のフィールドを「リコンシリエーション・ステージング」データセットの対応するフィールドに(一致のみで)マップして、リコンシリエーション一致のコンポジット・キー・フィールドを作成できます。
「プロビジョニング・ステージング」データセットのすべてのフィールドと、「Oracle Identity Manager」データセットの対応するフィールドとのマッピングを作成します。
リコンシリエーション・ルールを作成するには、リコンシリエーション・ステージング・データセットのフィールドと「OIM - ユーザー」データセットのフィールド間で一致のみのマッピングを作成します。子データセットがある場合は、一致のみのマッピングの入力フィールドとなる「リコンシリエーション・ステージング」データセットのフィールドの名前が「リコンシリエーション・ステージング」の子データセットで使用されていないことを確認してください。このガイドラインに従っていないと、リコンシリエーションは失敗します。
これについては、「「ステップ3: コネクタ構成の変更」ページ」にも記載されています。
変換マッピングの入力フィールドの1つとしてリテラル・フィールドを使用できます。「リテラル」オプションを選択した場合は、そのフィールドに値を入力する必要があります。このオプションの選択後は、リテラル・フィールドを空白にしないでください。
「Oracle Identity Manager」データセットのフィールドを使用する場合は次のベスト・プラクティスに従います。
信頼できるソースのリコンシリエーションでは、「OIM - ユーザー」データセットの次の各フィールドに常に値が保持されている必要があります。
ユーザーID
名
姓
組織名
Xellerateのタイプ
ロール
また、この他に選択できる「OIM - ユーザー」のフィールドにも、ユーザー・アカウントがリコンシリエーションを通じて作成された場合に入力が必要なものがあります。これらの各フィールドに対し、「リコンシリエーション・ステージング」データセットの対応するフィールドとのマッピングを作成する必要があります。リコンシリエーションの実行中は、これらのフィールドのソースとなるターゲット・システムのフィールドに、常に値が保持されているようにしてください。
プロビジョニングに選択できる「OIM - ユーザー」データセットまたは「OIM - アカウント」データセットのフィールドには、ターゲット・システムへの値の伝播が必要なものがあります。これらのフィールドは、特定した後に、「プロビジョニング・ステージング」データセットの対応するフィールドとのマッピングを作成してください。プロビジョニング操作中に、これらの各フィールドに値を入力する必要があります。
必要に応じて、事前定義済の「OIM - ユーザー」データセット・フィールドのリストにユーザー定義フィールド(UDF)を追加します。詳細は、Oracle Fusion Middleware Oracle Identity Manager管理者ガイドのユーザー属性の構成に関する説明を参照してください。
既存の汎用テクノロジ・コネクタで、「OIM - アカウント」データセットのフィールドの属性を変更または削除しないでください。
サマリー
親レコードと子データ・レコードが作成され、ターゲット・システムおよびOracle Identity Managerの両方でリンクされる場合は、各リコンシリエーション実行の開始時に、親データと子データ両方のファイルがステージング・ディレクトリに格納されていることを確認してください。
説明
ターゲット・システムに、子データ・レコードに関連付けられた親データ・レコードがあるとします。これらのレコードをOracle Identity Managerにリコンサイルするには、これらのレコードを含む親データファイルおよび子データファイルをステージング・ディレクトリに配置します。リコンシリエーション実行中に、子データ・レコードがその対応する親データ・レコードにリンクされます。後続のリコンシリエーション実行を開始する前に、ステージング・ディレクトリから子データファイルを削除すると、このような形の子データ・レコードの削除に対してリコンシリエーション・イベントは作成されません。特定の親データ・レコードの子データ・レコードを削除する場合は、子データファイルから子データ・レコードを削除する必要があります。子データファイルに子データ・レコード(3行目以降)がない場合にも、各リコンシリエーション実行時には、子データファイルがステージング・ディレクトリに配置されていることを確認してください。
カスタム・プロバイダを使用する場合は次のガイドラインを適用します。
カスタム・プロビジョニング・トランスポート・プロバイダのコードを開発する場合、「ユーザーの作成」操作の終了時にプロバイダが一意のフィールドの値を戻すことを確認してください。この機能は、プロビジョニング・トランスポート・プロバイダのsendData
メソッドによって実装されます。詳細は、「プロビジョニング中のプロバイダの役割」を参照してください。
汎用テクノロジ・コネクタの作成時に自動的に作成されたコネクタ・オブジェクトを使用する場合は、次のガイドラインを適用します。
サマリー:
リコンシリエーションのみの汎用テクノロジ・コネクタ用に自動的に作成されたリソース・オブジェクトは、プロビジョニングに使用しようとしないでください。
説明:
汎用テクノロジ・コネクタの作成時に「リコンシリエーション」オプションのみを選択したとします。作成プロセスの終了時に、この汎用テクノロジ・コネクタ用に自動的に作成されるオブジェクトの1つとして、リソース・オブジェクトが作成されます。ただし、リコンシリエーションのみの汎用テクノロジ・コネクタには汎用アダプタが作成されないため、このリソース・オブジェクトはいずれのユーザーにもプロビジョニングできません。
サマリー:
汎用テクノロジ・コネクタのリソース・オブジェクトを、Oracle Identity Managerで定義されている組織にプロビジョニングしようとしないでください。
説明:
リソース・オブジェクトは、汎用テクノロジ・コネクタの作成中に自動的に作成されるコネクタ・オブジェクトの1つです。このリソース・オブジェクトは、Oracle Identity Managerユーザーにのみプロビジョニングできます。Oracle Identity Managerで定義されている組織にはプロビジョニングしようとしないでください。
これについては、「コネクタ・オブジェクト」にも記載されています。
Design Consoleを使用すると、汎用テクノロジ・コネクタの作成中に自動的に作成されるコネクタ・オブジェクトをカスタマイズできます。コネクタ・オブジェクトをカスタマイズした後に「汎用テクノロジ・コネクタの管理」操作を実行すると、そのコネクタ・オブジェクトに対して行ったすべてのカスタマイズが上書きされます。そのため、次のガイドラインのいずれかを適用することをお薦めします。
Design Consoleを使用して、汎用テクノロジ・コネクタ・オブジェクトを変更しないでください。
ITリソースについてはこのガイドラインは適用されません。ITリソースのパラメータは、Design Consoleを使用して変更できます。ただし、GenericConnector
カテゴリおよびGenericConnectorProviders
カテゴリのキャッシュを有効にしている場合は、ITリソースのパラメータを変更する前後のいずれかにキャッシュをパージする必要があります。詳細は、Oracle Fusion Middleware Oracle Identity Manager管理者ガイドのキャッシュのパージに関する説明を参照してください。
Design Consoleを使用して汎用テクノロジ・コネクタ・オブジェクトを変更する場合、汎用テクノロジ・コネクタの変更に「汎用テクノロジ・コネクタの管理」機能を使用しないでください。
これについては、第21.5.6項「コネクタ・オブジェクトの使用」にも記載されています。
事前移入アダプタは、汎用テクノロジ・コネクタの作成時に自動的に作成されるコネクタ・オブジェクトのセットの一部ではありません。ただし、汎用テクノロジ・コネクタの作成中に、プロビジョニングの入力をリテラル・フィールドおよびユーザー・データ・フィールドにマップすることはできます。この機能を使用してもユーザー定義フォームへの事前移入はできませんが、プロビジョニング・データ・パケットに事前移入することは可能です。