この章では、特定のビジネス要件に対応するためにコネクタの機能を拡張する実行可能な手順について説明します。
ノート:
Oracle Identity Managerリリース11.1.2以降では、参照問合せはサポートされません。アイデンティティ・システム管理でフォーム・デザイナを使用して参照を管理する方法の詳細は、『Oracle Fusion Middleware Oracle Identity Managerの管理』の参照の管理に関する項を参照してください。
この章では、次の項目について説明します。
ノート:
この項ではオプションの手順を説明します。この手順は、ターゲット・リソースのリコンシリエーション用にカスタム・フィールドを追加する場合にのみ実行します。
デフォルトでは、表1-5に示したフィールドが、Oracle Identity Managerとターゲット・システム間のリコンシリエーション用にマップされます。必要に応じて、追加のフィールドをユーザー・リコンシリエーション用にマップできます。
ターゲット・リソースのリコンシリエーション用にカスタム・フィールドを追加するには、次の手順を実行します:
リソース・オブジェクトのリコンシリエーション・フィールドのリストにカスタム・フィールドを追加するには:
Oracle Identity Managerリリース11.1.2.x以降を使用している場合、次のようにして、Design Consoleの「フォーム・デザイナ」に加えられたすべての変更を、新しいUIフォームで実行する必要があります。
プロビジョニング処理の一部として、カスタム・フィールドのリコンシリエーション・フィールド・マッピングを、次のようにして作成します。
デフォルトでは、各参照定義に含まれる複数値フィールドは、Oracle Identity Managerとターゲット・システムのリコンシリエーションのためにマップされています。必要に応じて、ターゲット・リソースのリコンシリエーション用に新しい複数値フィールドを追加できます。
ノート:
この項ではオプションの手順を説明します。この手順は、ターゲット・リソースのリコンシリエーション用に複数値フィールドを追加する場合にのみ実行します。
ユーザー、グループ、組織単位またはロールのフィールドを追加するときに、この手順を実行できます。
リコンシリエーション用に追加する新しいフィールドに文字列形式のデータのみが格納されていることを確認する必要があります。Oracle Identity Managerにはバイナリ・フィールドを送信しないでください。
ターゲット・リソースのリコンシリエーション用に新しい複数値フィールドを追加するには、次の手順を実行します。
Oracle Identity Managerリリース11.1.2.x以降を使用している場合、次のようにして、Design Consoleの「フォーム・デザイナ」に加えられたすべての変更を、新しいUIフォームで実行する必要があります。
リソース・オブジェクトのリコンシリエーション・フィールドのリストに、次のようにして、新しい複数値フィールドを追加します。
ノート:
この項ではオプションの手順を説明します。この手順は、プロビジョニング用にカスタム・フィールドを追加する場合にのみ実行します。
デフォルトでは、「プロビジョニング用のユーザー・フィールド」で示した属性が、Oracle Identity Managerとターゲット・システム間のプロビジョニング用にマップされます。必要に応じて、追加の属性をプロビジョニング用にマップできます。
プロビジョニング用にカスタム・フィールドを追加するには、次の手順を実行します:
プロセス・フォームに新しいフィールドを追加するには:
Oracle Identity Manager Design Consoleにログインします。
プロセス・フォームに新しいフィールドを追加します。
「プロセス・フォームでのカスタム・フィールドの追加」に記載されている手順を実行してプロセス・フォームにフィールドを追加した場合は、フィールドを再度追加する必要はありません。フィールドを追加していない場合は、次のようにします。
「Development Tools」を開き、「Form Designer」をダブルクリックします。
UD_LDAP_USR、UD_OID_USRまたはUD_EDIR_USRプロセス・フォームを検索し、開きます。
「Create New Version」をクリックし、「Add」をクリックします。
フィールドの詳細を入力します。
たとえば、「Description」フィールドを追加している場合は、「Name」フィールドにUD_LDAP_USR_DESCRIPTIONまたはUD_OID_USR_DESCRIPTIONを入力し、このフィールドのその他の詳細情報を入力します。
「Save」をクリックし、「Make Version Active」をクリックします次に例を示します。
Oracle Identity Managerリリース11.1.2.x以降を使用している場合、次のようにして、Design Consoleの「フォーム・デザイナ」に加えられたすべての変更を、新しいUIフォームで実行する必要があります。
カスタム・フィールドでの更新プロビジョニング操作を次のように有効化します。
プロビジョニング処理で、フィールドを更新する新しいタスクを、次のようにして作成します。
「Process Management」を開き、「Process Definition」をダブルクリックします。
LDAP User、OID UserまたはeDirectory Userプロビジョニング・プロセスを検索して開きます。
「Add」をクリックしてタスクの名前および説明を入力します。次にサンプル値を示します。
Task Name: Description Updated
Task Description: Process Task for handling update of the description field.
「Task Properties」セクションで、次のフィールドを選択します。
- 条件付き
- 保留中の取消しを許可
- 複数のインスタンスを許可
「Insert」を選択して、「Trigger Type」リストのデータを追加します。
「保存」をクリックします。次に例を示します。
プロビジョニング処理で、次のようにして、「Handler Type」セクションでアダプタ名を選択します。
「Integration」タブに移動し、「Add」をクリックします。
「Handler Selection」ダイアログ・ボックスで「Adapter」を選択します。
「Handler Name」列でadpLDAPUPDATEまたはadpLDAPCHILDUPDATEを選択します。
eDirectoryターゲットの場合は、adpEDIRUPDATEまたはadpEDIRCHILDUPDATEを選択します。
「Save」をクリックして、ダイアログ・ボックスを閉じます。次に例を示します。
「Adapter Variable」リージョンでprocInstanceKey変数をクリックします。
表示されるダイアログ・ボックスで次のマッピングを作成します。
変数名: procInstanceKey
マップ先: Process Data
修飾子: Process Instance
「Save」をクリックして、ダイアログ・ボックスを閉じます。次に例を示します。
「アダプタ変数」リージョンの残りの変数について、「カスタム・フィールドでの更新プロビジョニング操作の有効化」のステップ3から5を繰り返します。各変数について次の表に示す値を「Map To」、「Qualifier」および「Literal Value」リストから選択してください。
変数 | マップ先 | 修飾子 | リテラル値 |
---|---|---|---|
アダプタの戻り変数 |
レスポンス・コード |
該当なし |
該当なし |
processInstanceKey |
プロセス・データ |
プロセス・インスタンス |
該当なし |
itResourceNameまたはitresourceFieldname (OIDターゲットの場合) |
リテラル |
文字列 |
UD_LDAP_USR_SERVER、UD_OID_USR_SERVERまたはUD_EDIR_USR_SERVER |
attrFieldName |
リテラル |
文字列 |
説明 |
objectType |
リテラル |
文字列 |
User |
「Responses」タブで「Add」をクリックして、少なくとも、「Status」がC
のSUCCESSレスポンス・コードを追加します。これにより、カスタム・タスクが正常に実行された場合に、タスクのステータスがCompletedとして表示されます
次に例を示します。
「Save」アイコンをクリックしてダイアログ・ボックスを閉じ、プロセス定義を保存します。
ノート:
リクエストベースのプロビジョニングを実行する場合のみ、この項および「PurgeCacheユーティリティの実行およびMDSへのリクエスト・データセット定義のインポート」のステップを実行します。
プロセス・フォームで属性を追加した場合は、リクエスト・データセット定義を含むXMLファイルも更新します。リクエスト・データセットを更新するには:
PurgeCacheユーティリティを実行して、サーバー・キャッシュからのデータセットのリクエストに関連するコンテンツをクリアします。
PurgeCacheユーティリティの詳細は、Oracle Fusion Middleware Oracle Identity Managerの管理のキャッシュのパージに関する項を参照してください。
XML形式のリクエスト・データセット定義をMDSにインポートします。
この手順の詳細は、「リクエスト・データセットのインポート」を参照してください。
ノート:
この項ではオプションの手順を説明します。この手順は、プロビジョニング用に複数値フィールドを追加する場合にのみ実行します。
プロビジョニング用に新しい複数値フィールドを追加するには、次の手順を実行します。
ノート:
次の手順を始める前に、「複数値フィールド用のフォームの作成」から「リソース・オブジェクト・リコンシリエーション・フィールドへの新しい複数値フィールドの追加」に記載されている手順を実行します。ターゲット・リソースのリコンシリエーション用に新しい複数値フィールドを追加する際にこれらのステップを実行した場合は、繰り返し実行する必要はありません。
リクエスト・データセットを更新します。
ノート:
リクエストベースのプロビジョニングを有効にした場合のみ、この項および「PurgeCacheユーティリティの実行およびMDSへのリクエスト・データセット定義のインポート」のステップを実行します。
プロセス・フォームで属性を追加した場合は、リクエスト・データセット定義を含むXMLファイルも更新します。リクエスト・データセットを更新するには、次の手順を実行します。
ノート:
この項ではオプションの手順を説明します。この手順は、信頼できるソースのリコンシリエーション用に新規フィールドを追加する場合にのみ実行します。
デフォルトでは、表1-33に示した属性が、リコンシリエーション用にOracle Identity Managerとターゲット・システム間でマップされます。必要に応じて、信頼できるソースのリコンシリエーション用に新しいフィールドを追加できます。これを行うには、次の手順を実行します。
OIMユーザー・プロセス・フォームに新しいフィールドを追加するには:
Oracle Identity Manager Design Consoleにログインします。
Oracle Identity Managerリリース11.1.1.5.3より前のリリースを使用している場合は、次のようにして、OIMユーザー・プロセス・フォームに新しいフィールドを追加します。
「管理」を開きます。
「User Defined Field Definition」をダブルクリックします。
Usersフォームを検索して開きます。
「Add」をクリックしてフィールドの詳細を入力します。
たとえば、「Employee ID」フィールドを追加する場合、「Name」フィールドにEmployee ID
と入力してデータ型を「String」に設定し、列名としてUSR_UDF_EMPLOYEE_ID
と入力してフィールド・サイズ値を入力します。
「保存」をクリックします。
Oracle Identity Managerリリース11.1.1.5.3を使用している場合は、Oracle Identity拡張管理インタフェースを使用して、OIMユーザー・プロセス・フォームに新しいフィールドを追加します。
Oracle Identity Managerリリース11.1.2以降を使用している場合は、『Oracle Fusion Middleware Oracle Identity Managerの管理』のカスタム属性の構成に関する項で説明されている手順を実行して、OIMユーザー・プロセス・フォームに新しいフィールドを追加します。
リソース・オブジェクトのリコンシリエーション・フィールドのリストに、次のようにして、新しいフィールドを追加します。
ノート:
この項ではオプションの手順を説明します。この手順は、リコンシリエーション時のデータの変換を構成する場合にのみ実行します。
要件に応じて、リコンサイルされた単一値ユーザー・データの変換を構成できます。たとえば、「名」および「姓」値を使用して、Oracle Identity Managerの「氏名」フィールドの値を作成できます。
リコンシリエーション中にフェッチした単一値のユーザー・データの変換を構成するには:
ノート:
この項ではオプションの手順を説明します。この手順は、リコンシリエーションおよびプロビジョニング時のデータの検証を構成する場合にのみ実行します。
要件に応じてリコンサイルおよびプロビジョニングされた単一値データの検証を構成できます。たとえば、「名」属性からフェッチしたデータを検証して、そのデータに番号記号(#)が含まれていないことを確認します。また、プロセス・フォームの「名」フィールドに入力したデータを検証して、プロビジョニング操作中にターゲット・システムに番号記号(#)が送信されないようにします。
データの検証を構成するには:
ノート:
この項ではオプションの手順を説明します。この手順は、ユーザー定義オブジェクト・クラスのためにコネクタを構成する場合にのみ実行します。
ユーザー定義オブジェクト・クラスのコネクタを構成するには:
カスタム・オブジェクト・クラスを使用する場合は、次の手順を実行する必要があります。この項の手順では、「ユーザー」オブジェクト・クラスを例に使用して説明します。
次のようにしてLDAP Userプロセス定義を変更します。
Design Consoleにログインします。
「Process Management」を開き、「Process Definition」をダブルクリックします。
LDAP Userプロセス定義を検索して開きます。
「タスク」タブで、LDAPユーザーの作成プロセス・タスクをダブルクリックします。
objectTypeアダプタ変数の値を、カスタム・オブジェクト・クラスの名前に変更します。
「保存」をクリックします。
'd'から'g'までのステップを繰り返し、「ユーザー」オブジェクト・クラスに関連付けられている各プロセス・タスクを編集して更新します。LDAPユーザーの削除および更新されたUD_LDAP_USRなどです。
次のスケジュール済ジョブのいずれかを実行する前に、スケジュール済ジョブの「オブジェクト・タイプ」属性の値をカスタム・オブジェクト・クラス値に設定します。
LDAP Connector User Search Delete Reconciliation
LDAP Connector User Search Reconciliation
LDAP Connector User Sync Reconciliation
LDAP Connector Trusted User Reconciliation
LDAP Connector Trusted User Delete Reconciliation
ノート:
この項ではオプションの手順を説明します。この手順は、複数の信頼できるソースのリコンシリエーションのためにコネクタを構成する場合にのみ実行します。
次に、組織のユーザー・データに対して複数の信頼できるソースが存在する場合の例を示します。
ターゲット・システムの1つは、従業員に関するデータの信頼できるソースです。2つ目のターゲット・システムは、契約者に関するデータの信頼できるソースです。3つ目のターゲット・システムは、インターンに関するデータの信頼できるソースです。
1つのターゲット・システムは、OIMユーザーを構成する一部のアイデンティティ・フィールドのデータを保持します。他の2つのシステムは、残りのアイデンティティ・フィールドのデータを保持します。つまり、OIMユーザーを作成するには、3つのシステム全部からデータをリコンサイルする必要があります。
組織のオペレーティング環境がこれらのシナリオのいずれかで説明されている環境に類似する場合、このコネクタを使用すると、組織のユーザー・データの信頼できるソースの1つとしてターゲット・システムを使用できるようになります。
この手順を実行すると、コネクタがPOSIXグループ(posixGroups)とPOSIXアカウント(posixAccounts)をサポートできるようになります。
この構成を完了すると次のようになります。
コネクタがPOSIXグループをサポートします。
同期リコンシリエーション操作が、POSIXグループ・メンバーシップの変更を戻さなくなります。これらの変更を取得するために、完全検索リコンシリエーション・タスクを使用する必要があります。
コネクタがPOSIXグループおよびアカウントをサポートするように構成するには:
Oracle Identity Manager Design Consoleにログインします。
Lookup.LDAP.Configuration、Lookup.LDAP.OUD.ConfigurationまたはLookup.OID.Configuration参照定義を次のように変更します。
maintainPosixGroupMembershipをtrueに設定します。
accountObjectClassesに、"posixGroup","posixAccount"を追加します。
objectClassesToSynchronizeに、"posixGroup","posixAccount"を追加します。
groupObjectClassesを"top", "posixGroup"に設定します。
readSchemaをtrueに設定します。
Lookup.LDAP.UM.ProvAttrMapおよびLookup.LDAP.UM.ReconAttrMap参照定義で、"ldapGroups"を"posixGroups"で置き換えます。
OIDでは、Lookup.OID.UM.ProvAttrMapおよびLookup.OID.UM.ReconAttrMap参照定義を更新します。
eDirectoryでは、Lookup.EDIR.UM.ProvAttrMapおよびLookup.EDIR.UM.ReconAttrMap参照定義を更新します。
Lookup.LDAP.Group.ProvAttrMapおよびLookup.LDAP.Group.ReconAttrMap参照定義で、次のマッピングを文字列として追加します。
GID NUMBER to gidNumber
OIDでは、Lookup.OID.Group.ProvAttrMapおよびLookup.OID.Group.ReconAttrMap参照定義を更新します。
OIDでは、Lookup.EDIR.Group.ProvAttrMapおよびLookup.EDIR.Group.ReconAttrMap参照定義を更新します。
LDAP Group、OID GroupまたはeDirectory Groupリソース・オブジェクトに、GID NUMBERフィールドを次のように追加します。
グループ(LDAP Group、OID GroupまたはeDirectory Group)、「Object Reconciliation」、「Add Field」を順に選択して、GID NUMBERを追加します。
LDAP Group、OID GroupまたはeDirectory Groupプロセス・フォームに、GID NUMBERフィールドを追加します。
LDAP Group、OID GroupまたはeDirectory Groupプロセス定義に、GID Numberのマッピングを文字列として追加します。
Lookup.LDAP.UM.ProvAttrMap およびLookup.LDAP.UM.ReconAttrMap参照定義で、次のマッピングを文字列として追加します。
GID NUMBER to gidNumber
UID NUMBER to uidNumber
HOME DIRECTORY to homedirectory
OIDでは、Lookup.OID.UM.ProvAttrMapおよびLookup.OID.UM.ReconAttrMap参照定義を更新します。
eDirectoryでは、Lookup.EDIR.UM.ProvAttrMapおよびLookup.EDIR.UM.ReconAttrMap参照定義を更新します。
LDAP User、OID UserまたはeDirectory Userリソース・オブジェクトに、次のフィールドのマッピングを文字列として追加します。
GID NUMBER
UID NUMBER
HOME DIRECTORY
LDAP User、OID UserまたはeDirectory Userプロセス・フォームに、次のフィールドのマッピングを文字列として追加します。
GID NUMBER
UID NUMBER
HOME DIRECTORY
LDAP User、OID UserまたはeDirectory Userプロセス定義に、次のフィールドのマッピングを文字列として追加します。
GID NUMBER
UID NUMBER
HOME DIRECTORY
終了したら、「Create Reconciliation Profile」をクリックします。
組織単位(OU)のターゲット・システムに対するプロビジョニングと同時に、カスタム・オブジェクト・クラスをプロビジョニングすることがサポートされています。OUに使用されるオブジェクト・クラスを変更するには、適切な参照定義でキーOU ObjectClassesを追加する必要があります。
このセクションには次のトピックが含まれます:
カスタム・オブジェクト・クラスを追加する場合、OUコンテナ参照のリコンサイルに使用されるスケジュール済タスク(LDAP Connector OU Lookup Reconciliation)が、構成参照定義でouObjectClassesコード・キーのデコード値として指定されたobjectClassesを持つ、そのOUに移入されます。
ただし、LDAP内のOUコンテナにそれに関連付けられたカスタム・オブジェクト・クラスがない場合、スケジュール済タスク(LDAP Connector OU Lookup Reconciliation)は参照を更新しません。デフォルトのOUコンテナ参照をリコンサイルするには、LDAP Connector OU Lookup Reconciliationスケジュール済ジョブのObject Typeパラメータの値としてorganizationalUnit
を入力します。これによって参照にすべてのOUが移入されます。これは、デフォルトのOUに対するObjectClassがorganizationalUnitであるためです。
同様の動作は、スケジュール済タスクのLDAP/OID/eDirectory OU検索リコンシリエーション操作および同期化リコンシリエーション操作で観察されます。これらの操作は、ouObjectClassesのデコード・キーで指定されたobjectClassesを持つOUをフェッチします。
デフォルトの動作を取得するには、コード・キーouObjectClasses
に対するデコード・キー値をtop
またはorganizationalUnit
として指定する必要があります。