Microsoft Active Directory User Managementコネクタの機能の拡張

特定のビジネス要件に対応するようにコネクタの機能を拡張できます。

デフォルトでは、コネクタは特定の一連のタスクを実行するように構成されています。特定のビジネス要件に対処するために、次の項で説明する手順を実行してコネクタの機能を拡張できます。

ノート:

Oracle Identity Managerリリース11.1.2以降では、参照問合せはサポートされません。Oracle Identity Managerシステム管理コンソールでのフォーム・デザイナの使用による参照の管理の詳細は、Oracle Identity Managerの管理の参照の管理を参照してください。

ターゲット・リソースのリコンシリエーション用のカスタム・フィールドの追加

ユーザー、グループまたは組織単位のリコンシリエーションのためにさらにフィールドを追加できます。

ノート:

この項ではオプションの手順を説明します。リコンシリエーション用のカスタム・フィールドを追加しない場合は、この手順を実行する必要はありません。

デフォルトでは、表1-14に示したフィールドが、Oracle Identity Managerとターゲット・システム間のリコンシリエーション用にマップされます。必要であれば、ユーザー、グループまたは組織単位のリコンシリエーションのために追加フィールドをマップすることができます。

ターゲット・リソースのリコンシリエーションのためにカスタム・フィールドを追加するには:

  1. Oracle Identity Manager Design Consoleにログインします。

  2. リソース・オブジェクトのリコンシリエーション・フィールドのリストに、次のようにして、カスタム・フィールドを追加します。

    1. 「Resource Management」を開き、「Resource Objects」をダブルクリックします。

    2. 次のリソース・オブジェクトのうち1つを検索して開きます。

      ユーザーの場合: AD User

      グループの場合: AD Group

      組織単位の場合: AD Organizational Unit

    3. 「Object Reconciliation」タブで、「Add Field」をクリックします。

    4. 「Add Reconciliation Field」ダイアログ・ボックスに、フィールドの詳細を入力します。

      たとえば、「Field Name」フィールドにDescriptionと入力し、「Field Type」リストから「String」を選択します。

      ブール型フィールドを追加している場合は、フィールド・タイプとして「文字列」を選択します。

    5. 「Save」をクリックして、ダイアログ・ボックスを閉じます。

    6. 「Create Reconciliation Profile」をクリックします。これにより、リソース・オブジェクトに行われた変更がMDSにコピーされます。

    7. 「保存」をクリックします。

  3. リコンシリエーションの参照定義で、次のようにして、フィールドのエントリを作成します。

    1. 「Administration」を開き、「Lookup Definition」をダブルクリックします。

    2. 次のいずれかの参照定義を検索して開きます。

      ユーザーの場合: Lookup.ActiveDirectory.UM.ReconAttrMap

      グループの場合: Lookup.ActiveDirectory.GM.ReconAttrMap

      組織単位の場合: Lookup.ActiveDirectory.OM.ReconAttrMap

    3. 「Add」をクリックし、フィールドのコード・キー値とデコード値を入力します。コード・キー値は、ステップ2.dのリコンシリエーション・フィールドに指定したフィールドの名前です。デコード値はターゲット・システム・フィールドの名前です。

      たとえば、「Code Key」フィールドにはDescription、「Decode」フィールドにはdescriptionと入力します。

    4. 「保存」をクリックします。

  4. 次のようにして、プロセス・フォームにカスタム・フィールドを追加します。

    1. 「開発ツール」を開き、「フォーム・デザイナ」をダブルクリックします。

    2. 次のプロセス・フォームのうち1つを検索して開きます。

      ユーザーの場合: UD_ADUSER

      グループの場合: UD_ADGRP

      組織単位の場合: UD_ADOU

    3. 「Create New Version」「Add」を順にクリックします。

    4. フィールドの詳細を入力します。

      たとえば、「Description」フィールドを追加する場合は、「Name」フィールドにUD_ADUSER_DESCRIPTIONを入力し、続いてこのフィールドの残りの詳細を入力します。

    5. 「Save」をクリックし、「Make Version Active」をクリックします。

  5. Oracle Identity Managerリリース11.1.2.x以降を使用している場合、次のようにして、Design Consoleの「フォーム・デザイナ」に加えられたすべての変更を、新しいUIフォームで実行する必要があります。

    1. Oracle Identity System Administrationにログインします。

    2. サンドボックスを作成し、アクティブにします。詳細は、サンドボックスの作成およびアクティブ化を参照してください。

    3. 新たに追加したフィールドと残りのフィールドを表示するために新しいUIフォームを作成します。UIフォームの作成の詳細は、UIフォームの新規作成を参照してください。

    4. 新たに作成したUIフォームを、ターゲット・システムのアプリケーション・インスタンスと関連付けます。それを行うには、「フォーム」フィールドの、リソースの既存のアプリケーション・インスタンスを開き、(ステップ5.cで作成した)フォームを選択して、アプリケーション・インスタンスを保存します。

    5. サンドボックスを公開します。詳細は、サンドボックスの公開を参照してください。

  6. プロビジョニング処理の一部として、カスタム・フィールドのリコンシリエーション・フィールド・マッピングを、次のようにして作成します。

    1. Design Consoleにログインします。

    2. 「Process Management」を開き、「Process Definition」をダブルクリックします。

    3. 次のプロビジョニング処理のうち1つを検索して開きます。

      ユーザーの場合: AD User

      グループの場合: AD Group

      組織単位の場合: AD Organizational Unit

    4. プロビジョニング処理の「Reconciliation Field Mappings」タブで、「Add Field Map」をクリックします。

    5. 「Add Reconciliation Field Mapping」ダイアログ・ボックスの「Field Name」フィールドで、追加するフィールドの値を選択します。

      たとえば、「Field Name」フィールドでDescriptionを選択します。

    6. 「Process Data」フィールドをダブルクリックし、UD_ADUSER_DESCRIPTIONを選択します。

    7. 「Save」をクリックして、ダイアログ・ボックスを閉じます。

    8. 「保存」をクリックします。

ターゲット・リソースのリコンシリエーション用の新規複数値フィールドの追加

Oracle Identity Managerとターゲット・システムとの間のリコンシリエーション用に複数値フィールドを追加できます。

ノート:

この手順は、ユーザー・フィールド、グループ・フィールドまたは組織単位フィールドの追加に適用できます。

リコンシリエーション用に追加する新しいフィールドに文字列形式のデータのみが格納されていることを確認する必要があります。Oracle Identity Managerにはバイナリ・フィールドを送信しないでください。

デフォルトでは、表1-14に示した複数値フィールドが、Oracle Identity Managerとターゲット・システム間のリコンシリエーション用にマップされます。必要に応じて、ターゲット・リソースのリコンシリエーション用に新しい複数値フィールドを追加できます。

ターゲット・リソースのリコンシリエーション用に新しい複数値フィールドを追加するには、次のようにします。

  1. Oracle Identity Manager Design Consoleにログインします。

  2. 次のようにして、複数値フィールド用のフォームを作成します。

    1. 「Development Tools」を開き、「Form Designer」をダブルクリックします。

    2. 表の名前および説明を指定してフォームを作成し、「Save」をクリックします。

    3. 「Add」をクリックしてフィールドの詳細を入力します。

    4. 「Save」をクリックし、「Make Version Active」をクリックします。図4-1に、新しいフォームで追加された複数値フィールドを示します。

    図4-1 新しいフォームで追加された複数値フィールド

    図4-1の説明が続きます
    「図4-1 新しいフォームで追加された複数値フィールド」の説明
  3. 次のようにして、複数値フィールド用に作成されたフォームをプロセス・フォームの子フォームとして追加します。

    1. 次のプロセス・フォームのうち1つを検索して開きます。

      ユーザーの場合: UD_ADUSER

      グループの場合: UD_ADGRP

      組織単位の場合: UD_ADOU

    2. 「新しいバージョンの作成」をクリックします。

    3. 「Child Table(s)」タブをクリックします。

    4. 「割当て」をクリックします。

    5. 「Assign Child Tables」ダイアログ・ボックスで、新規作成した子フォームを選択して右矢印をクリックした後、「OK」をクリックします。

    6. 「Save」をクリックし、「Make Version Active」をクリックします。図4-2に、プロセス・フォームに追加された子フォームを示します。

    図4-2 プロセス・フォームに追加された子フォーム

    図4-2の説明が続きます
    「図4-2 プロセス・フォームに追加された子フォーム」の説明
  4. Oracle Identity Managerリリース11.1.2.x以降を使用している場合、次のようにして、Design Consoleの「フォーム・デザイナ」に加えられたすべての変更を、新しいUIフォームで実行する必要があります。

    1. Oracle Identity System Administrationにログインします。

    2. サンドボックスを作成し、アクティブにします。詳細は、サンドボックスの作成およびアクティブ化を参照してください。

    3. 新たに追加したフィールドと残りのフィールドを表示するために新しいUIフォームを作成します。UIフォームの作成の詳細は、UIフォームの新規作成を参照してください。

    4. 新たに作成したUIフォームを、ターゲット・システムのアプリケーション・インスタンスと関連付けます。それを行うには、「フォーム」フィールドの、リソースの既存のアプリケーション・インスタンスを開き、(ステップ4.cで作成した)フォームを選択して、アプリケーション・インスタンスを保存します。

    5. サンドボックスを公開します。詳細は、サンドボックスの公開を参照してください。

  5. リソース・オブジェクトのリコンシリエーション・フィールドのリストに、次のようにして、新しい複数値フィールドを追加します。

    1. Design Consoleにログインします。

    2. 「Resource Management」を開き、「Resource Objects」をダブルクリックします。

    3. 次のリソース・オブジェクトのうち1つを検索して開きます。

      ユーザーの場合: AD User

      グループの場合: AD Group

      組織単位の場合: AD Organizational Unit

    4. 「Object Reconciliation」タブで、「Add field」をクリックします。

    5. 「Add Reconciliation Fields」ダイアログ・ボックスに、フィールドの詳細を入力します。

      たとえば、「Field Name」フィールドにcarlicensesと入力し、「Field Type」リストから「Multi Valued Attribute」を選択します。

    6. 「Save」をクリックしてダイアログ・ボックスを閉じます。

    7. 新規作成したフィールドを右クリックして、「Define Property Fields」を選択します。

    8. 「Add Reconciliation Fields」ダイアログ・ボックスに、新規作成したフィールドの詳細を入力します。

      たとえば、「Field Name」フィールドにcarlicenseと入力し、「Field Type」リストから「String」を選択します。

    9. 「保存」をクリックしてダイアログ・ボックスを閉じます。図4-3に、リソース・オブジェクトに追加された新しいリコンシリエーション・フィールドを示します。

      図4-3 リソース・オブジェクトに追加された新しいリコンシリエーション・フィールド

      図4-3の説明が続きます
      「図4-3 リソース・オブジェクトに追加された新しいリコンシリエーション・フィールド」の説明
    10. 「Create Reconciliation Profile」をクリックします。これにより、リソース・オブジェクトに行われた変更がMDSにコピーされます。

  6. リコンシリエーションの参照定義で、次のようにして、フィールドのエントリを作成します。

    1. 「Administration」を開き、「Lookup Definition」をダブルクリックします。

    2. 次のいずれかの参照定義を検索して開きます。

      ユーザーの場合: Lookup.ActiveDirectory.UM.ReconAttrMap

      グループの場合: Lookup.ActiveDirectory.GM.ReconAttrMap

      組織単位の場合: Lookup.ActiveDirectory.OM.ReconAttrMap

      ノート:

      ターゲット・システム・フィールドには、ターゲット・システムと同じ大文字または小文字を使用する必要があります。フィールド名では、大/小文字が区別されるためです。

    3. 「Add」をクリックしてフィールドの「Code Key」および「Decode」に値を入力し、「Save」をクリックします。コード・キーとデコードの値は次の形式にする必要があります。

      コード・キー: MULTIVALUED_FIELD_NAME~CHILD_RESOURCE_OBJECT_FIELD_NAME

      デコード: 対応するターゲット・システム属性。

      たとえば、「Code Key」フィールドにはcarlicenses~carlicense、「Decode」フィールドにはcarlicenseと入力します。図4-4に、参照定義に追加された参照コードを示します。

    図4-4 参照定義に追加されたエントリ

    図4-4の説明が続きます
    「図4-4 参照定義に追加されたエントリ」の説明
  7. 次のようにして、新しいフィールド用のリコンシリエーション・フィールド・マッピングを作成します。

    1. 「Process Management」を開き、「Process Definition」をダブルクリックします。

    2. 次のいずれかのプロセス定義を検索して開きます。

      ユーザーの場合: AD User

      グループの場合: AD Group

      組織単位の場合: AD Organizational Unit

    3. AD User(あるいはAD GroupまたはAD Organizational Unit)プロセス定義の「Reconciliation Field Mappings」タブで、「Add Table Map」をクリックします。

    4. 「Add Reconciliation Table Mapping」ダイアログ・ボックスで、リストからフィールド名および表名を選択し、「Save」をクリックしてダイアログ・ボックスを閉じます。

    5. 新規作成したフィールドを右クリックして、「Define Property Field Map」を選択します。

    6. 「Field Name」フィールドで、追加するフィールドの値を選択します。

    7. 「Process Data Field」フィールドをダブルクリックし、UD_CARLICENを選択します。

    8. 「Key Field for Reconciliation Field Matching」を選択して「Save」をクリックします。図4-5に、プロセス定義のプロセス・データ・フィールドにマップされた新しいリコンシリエーション・フィールドを示します。

    図4-5 プロセス・データ・フィールドにマップされた新しいリコンシリエーション・フィールド

    図4-5の説明が続きます
    「図4-5 プロセス・データ・フィールドにマップされた新しいリコンシリエーション・フィールド」の説明

プロビジョニング用のカスタム・フィールドの追加

デフォルト属性以外の追加属性をプロビジョニングのためにマップできます。

デフォルトでは、表1-19で示した属性が、Oracle Identity Managerとターゲット・システムとの間のプロビジョニング用にマップされます。

プロビジョニングのためにカスタム・フィールドを追加するには、次の項で示す手順を実行します。

プロセス・フォームでの新規フィールドの追加

「ターゲット・リソースのリコンシリエーション用のカスタム・フィールドの追加」のステップ4を実行してプロセス・フォームにフィールドを追加した場合は、フィールドを再度追加する必要はありません。フィールドを追加していない場合は、次のように追加します。

  1. Oracle Identity Manager Design Consoleにログインします。
  2. 「開発ツール」を開き、「フォーム・デザイナ」をダブルクリックします。
  3. 次のプロセス・フォームのうち1つを検索して開きます。

    ユーザーの場合: UD_ADUSER

    グループの場合: UD_ADGRP

    組織単位の場合: UD_ADOU

  4. 「Create New Version」「Add」を順にクリックします。
  5. フィールドの詳細を入力します。

    たとえば、「Description」フィールドを追加する場合は、「Name」フィールドにUD_ADUSER_DESCRIPTIONを入力し、続いてこのフィールドの残りの詳細を入力します。

  6. フォーム・アップグレード・ジョブを実行します。『Fusion Middleware Oracle Identity Manager管理者ガイド』のフォーム・アップグレード・ジョブの使用に関する項を参照してください。
  7. 「Save」をクリックし、「Make Version Active」をクリックします。

新規UIフォームへのフォーム・デザイナの変更のレプリケート

Oracle Identity Managerリリース11.1.2.x以降を使用している場合、次のようにして、Design Consoleの「フォーム・デザイナ」に加えられたすべての変更を、新しいUIフォームで実行する必要があります。

  1. Oracle Identity System Administrationにログインします。
  2. サンドボックスを作成し、アクティブにします。 Oracle Fusion Middleware Oracle Identity Managerのためのアプリケーションの開発とカスタマイズのサンドボックスの作成に関する項 および サンドボックスのアクティブ化および非アクティブ化に関する項を参照してください。
  3. 新たに追加したフィールドと残りのフィールドを表示するために新しいUIフォームを作成します。Oracle Fusion Middleware Oracle Identity Managerの管理 の フォーム・デザイナを使用したフォームの作成に関する項を 参照してください。 
  4. 新たに作成したUIフォームをターゲット・システムのアプリケーション・インスタンスに関連付けます。そのためには、リソースに対する既存のアプリケーション・インスタンスを開いて、フォームフィールドからフォーム(ステップ3.cで作成済)を選択し、アプリケーション・インスタンスを保存します。
  5. サンドボックスを公開します。Oracle Fusion Middleware Oracle Identity Managerのアプリケーションの開発とカスタマイズのサンドボックスの公開に関する項 を参照してください。
  6. フォーム更新ジョブ・スケジュール済タスクを実行します。フォーム更新ジョブ・スケジュール済タスクの詳細は、『Oracle Fusion Middleware Oracle Identity Managerの管理』の事前定義済のスケジュール済タスクに関する項を参照してください。

プロビジョニング参照定義内のエントリの作成

プロビジョニングの参照定義で、次のようにして、フィールドのエントリを作成します。

  1. Oracle Identity Manager Design Consoleにログインします。
  2. 「Administration」を開き、「Lookup Definition」をダブルクリックします
  3. 次のいずれかの参照定義を検索して開きます。

    ユーザーの場合: Lookup.ActiveDirectory.UM.ProvAttrMap

    グループの場合: Lookup.ActiveDirectory.GM.ProvAttrMap

    組織単位の場合: Lookup.ActiveDirectory.OM.ProvAttrMap

  4. 「Add」をクリックし、フィールドのコード・キー値とデコード値を入力します。デコード値は、ターゲット・システムのフィールドの名前にする必要があります。

    たとえば、「Code Key」フィールドにはDescription(この手順のステップ2でプロセス・フォームに追加したフィールドの名前)、「Decode」フィールドにはdescriptionと入力します。

    ノート:

    追加したフィールドがブール型の場合は、次の形式でデコード値を入力します。

    TARGET_ATTR_NAME=(OIM_PROCESS_FORM_FIELD_NAME=='1')?"TRUE":"FALSE"

    たとえば、ターゲット・システム属性OCSUserEnabled、およびプロセス・フォームのOCSUserEnabledという名前のフィールドについて考えてみましょう。この場合、OCSUserEnabledコード・キーのデコード値は次のようになります。

    OCSUserEnabled=(OCSUserEnabled == '1') ? "TRUE":"FALSE"

  5. 「保存」をクリックします。

カスタム・フィールドでの更新プロビジョニング操作の有効化

カスタム・フィールドを追加した後、次のように、そのフィールドで更新プロビジョニング操作を有効にする必要があります。

  1. プロビジョニング処理で、フィールドを更新する新しいタスクを、次のようにして作成します。

    1. 「Process Management」を開き、「Process Definition」をダブルクリックします。

    2. 次のプロビジョニング処理のうち1つを検索して開きます。

      ユーザーの場合: AD User

      グループの場合: AD Group

      組織単位の場合: AD Organizational Unit

    3. 「Add」をクリックしてタスクの名前および説明を入力します。次にサンプル値を示します。

      Task Name: Description Updated

      Task Description: Process Task for handling update of the description field.

    4. 「Task Properties」セクションで、次のフィールドを選択します。

      条件付き

      保留中の取消しを許可

      複数のインスタンスを許可

    5. 「保存」をクリックします。

  2. プロビジョニング処理で、次のようにして、「Handler Type」セクションでアダプタ名を選択します。

    1. 「Integration」タブに移動し、「Add」をクリックします。

    2. 「Handler Selection」ダイアログ・ボックスで「Adapter」を選択します。

    3. 「Handler Name」列でadpADIDCUPDATEATTRIBUTEVALUEを選択します。

    4. 「Save」をクリックして、ダイアログ・ボックスを閉じます。

  3. 「Adapter Variable」リージョンでprocInstanceKey変数をクリックします。

  4. 表示されるダイアログ・ボックスで次のマッピングを作成します。

    変数名: procInstanceKey

    マップ先: Process Data

    修飾子: Process Instance

  5. 「Save」をクリックして、ダイアログ・ボックスを閉じます。

  6. 「ユーザー」カスタム・フィールドの更新プロビジョニング操作を有効にする場合、「アダプタ変数」リージョン内の残りの変数について、ステップ3から5を繰り返します。各変数について次の表に示す値を「Map To」、「Qualifier」および「Literal Value」リストから選択してください。

    変数 マップ先 修飾子 リテラル値

    アダプタの戻り変数

    レスポンス・コード

    該当なし

    該当なし

    itResourceFieldName

    リテラル

    文字列

    UD_ADUSER_SERVER

    attrFieldName

    リテラル

    文字列

    説明

    objectType

    リテラル

    文字列

    User

  7. 「グループ」カスタム・フィールドの更新プロビジョニング操作を有効にする場合、次の表内のすべての変数について、ステップ3から5を繰り返します。各変数について次の表に示す値を「Map To」、「Qualifier」および「Literal Value」リストから選択してください。

    変数 マップ先 修飾子 リテラル値

    procInstanceKey

    プロセス・データ

    プロセス・インスタンス

    該当なし

    アダプタの戻り変数

    レスポンス・コード

    該当なし

    該当なし

    itResourceFieldName

    リテラル

    文字列

    UD_ADGRP_SERVER

    attrFieldName

    リテラル

    文字列

    CUSTOM_FIELD_NAME

    objectType

    リテラル

    文字列

    Group

  8. 組織単位カスタム・フィールドの更新プロビジョニング操作を有効にする場合、次の表内のすべての変数について、ステップ3から5を繰り返します。各変数について次の表に示す値を「Map To」、「Qualifier」および「Literal Value」リストから選択してください。

    変数 マップ先 修飾子 リテラル値

    procInstanceKey

    プロセス・データ

    プロセス・インスタンス

    該当なし

    アダプタの戻り変数

    レスポンス・コード

    該当なし

    該当なし

    itResourceFieldName

    リテラル

    文字列

    UD_ADOU_SERVER

    attrFieldName

    リテラル

    文字列

    CUSTOM_FIELD_NAME

    objectType

    リテラル

    文字列

    organizationalUnit

  9. 「レスポンス」タブで「追加」をクリックして、少なくともSUCCESSレスポンス・コードをステータスCとともに追加します。これにより、カスタム・タスクが正常に実行されると、タスクのステータスが「完了」として表示されます。

  10. 「Save」アイコンをクリックしてダイアログ・ボックスを閉じ、プロセス定義を保存します。

リクエスト・データセットの更新

プロセス・フォームで属性を追加した場合は、リクエスト・データセット定義を含むXMLファイルも更新します。リクエスト・データセットを更新するには:

  1. テキスト・エディタで、OIM_HOME/dataset/fileディレクトリにあるXMLファイルを編集のために開きます。
  2. AttributeReference要素を追加し、この要素の必須属性の値を指定します。

    たとえば、プロセス・フォームでの新規フィールドの追加で説明した手順の実行中にプロセス・フォームに属性としてEmployee IDを追加した場合は、次の行を入力します。

    <AttributeReference
    name = "Employee ID"
    attr-ref = "Employee ID"
    type = "String"
    widget = "text"
    length = "50"
    available-in-bulk = "false"/>
    

    このAttributeReference要素の属性は次のように指定します。

    • name属性では、プロセス・フォームの「Name」列の値を表名接頭辞を付けずに入力します。

      たとえば、UD_ADUSER_EMPLOYEE_IDがプロセス・フォームの「Name」列の値である場合、AttributeReference要素のname属性の値としてEmployee IDを指定する必要があります。

    • attr-ref属性の場合は、プロセス・フォームでの新規フィールドの追加で説明した手順の実行中にプロセス・フォームのフィールド・ラベル列に入力した値を入力します。

    • type属性の場合は、プロセス・フォームでの新規フィールドの追加で説明した手順の実行中にプロセス・フォームのバリアント・タイプ列に入力した値を入力します。

    • widget属性の場合は、プロセス・フォームでの新規フィールドの追加で説明した手順の実行中にプロセス・フォームのフィールド・タイプ列に入力した値を入力します。

    • length属性の場合は、プロセス・フォームでの新規フィールドの追加で説明した手順の実行中にプロセス・フォームの「長さ」列に入力した値を入力します。

    • available-in-bulk属性では、バルク・リクエストの作成または変更で属性を使用する必要がある場合にはtrueを指定します。それ以外の場合は、falseを指定します。

    プロセス・フォームでの新規フィールドの追加で説明した手順の実行中に、プロセス・フォームで複数の属性を追加した場合は、追加した属性ごとにこのステップを繰り返します。

  3. XMLファイルを保存して閉じます。

サーバー・キャッシュからのデータセットのリクエストに関連するコンテンツのクリア

PurgeCacheユーティリティを実行して、サーバー・キャッシュからのデータセットのリクエストに関連するコンテンツをクリアします。

PurgeCacheユーティリティの実行の詳細は、『Oracle Fusion Middleware Oracle Identity Managerの管理』のキャッシュのパージに関する項を参照してください。

リクエスト・データセットのインポート

ノート:

リクエストベースのプロビジョニングを有効にした場合のみ、この項で説明する手順を実行します。

XML形式のリクエスト・データセット定義をMDSにインポートします。

この手順の詳細は、「リクエスト・データセットのインポート」を参照してください。

プロビジョニングへの新規複数値フィールドの追加

プロビジョニングのために新しい複数値フィールドを追加できます。

ノート:

次の手順を始める前に、「ターゲット・リソースのリコンシリエーション用の新規複数値フィールドの追加」に記載されているステップ1から4を実行してください。ターゲット・リソースのリコンシリエーション用に新しい複数値フィールドを追加する際にこれらのステップを実行した場合は、繰り返し実行する必要はありません。

プロビジョニング用に新しい複数値フィールドを追加するには、次のようにします。

プロビジョニング参照定義内のエントリの作成

プロビジョニングの参照定義で、次のようにして、フィールドのエントリを作成します。

  1. Oracle Identity Manager Design Consoleにログインします。
  2. 「管理」を開き、「参照定義」をダブルクリックします。
  3. 次のいずれかの参照定義を検索して開きます。
    • Microsoft Active Directoryのユーザー・フィールドの場合、Lookup.ActiveDirectory.UM.ProvAttrMapを開きます。

    • Microsoft Active Directoryのグループ・フィールドの場合、Lookup.ActiveDirectory.GM.ProvAttrMapを開きます。

    • Microsoft Active Directoryの組織単位フィールドの場合、Lookup.ActiveDirectory.OM.ProvAttrMapを開きます。

  4. 「Add」をクリックし、フィールドのコード・キー値とデコード値を入力します。コード・キーとデコードの値は次の形式にする必要があります。

    コード・キー: CHILD_FORM_NAME~CHILD_FIELD_LABEL

    この形式で、CHILD_FORM_NAMEは子フォームの名前を指定します。CHILD_FIELD_NAMEは、管理およびユーザー・コンソールのOIMユーザー子フォームにあるフィールドの名前を指定します。

    デコード: 対応するターゲット・システム属性

    ノート:

    ターゲット・システム・フィールドには、ターゲット・システムと同じ大文字または小文字を使用する必要があります。フィールド名では、大/小文字が区別されるためです。

    たとえば、「Code Key」フィールドにはUD_CARLICEN~Car License「Decode」・フィールドにはcarLicenseと入力します。図4-6に、参照定義に追加されたエントリを示します。

    図4-6 参照定義に追加されたエントリ

    図4-6の説明が続きます
    「図4-6 参照定義に追加されたエントリ」の説明

複数値フィールドでの更新プロビジョニング操作の有効化

複数値フィールドでの更新プロビジョニング操作を次のように有効化します。

  1. 「プロセス管理」を開いて、「プロセス定義」をダブルクリックします。
  2. 次のいずれかのプロセス定義を検索して開きます。

    ユーザーの場合: AD User

    グループの場合: AD Group

    組織単位の場合: AD Organizational Unit

  3. 「Add」をクリックしてタスクの名前および説明を入力します。たとえば、タスクの名前および説明としてCar License Insertと入力します。
  4. 「Task Properties」セクションで、次のフィールドを選択します。

    条件付き

    Allow Cancellation while Pending

    複数のインスタンスを許可

    UD_CARLICEN (「Child Table」リストの子表を追加する場合)

    Insert(「Trigger Type」リストのデータを追加する場合)

  5. 「保存」をクリックします。図4-7に、プロセスに追加された複数値タスクを示します。

    図4-7 AD Userプロビジョニング・プロセスに追加された複数値フィールド

    図4-7の説明が続きます
    「図4-7 AD Userプロビジョニング・プロセスに追加された複数値フィールド」の説明
  6. AD Userプロビジョニング・プロセスの「Integration」タブで、「Add」をクリックして「Adapter」を選択します。アダプタのリストからadpADIDCUPDATECHILDTABLEVALUESを選択します。
  7. 「Save」をクリックしてダイアログ・ボックスを閉じます。
  8. 「Adapter Variable」リージョンでprocInstanceKey変数をクリックします。
  9. 表示されるダイアログ・ボックスで次のマッピングを作成します。

    変数名: procInstanceKey

    マップ先: Process Data

    修飾子: Process Instance

  10. 「Save」をクリックして、ダイアログ・ボックスを閉じます。
  11. 「ユーザー」複数値フィールドの更新プロビジョニング操作を有効にする場合、「アダプタ変数」リージョン内の残りの変数について、ステップ8から10を繰り返します。各変数について次の表に示す値を「Map To」、「Qualifier」および「Literal Value」リストから選択してください。
    変数 マップ先 修飾子 リテラル値

    アダプタの戻り変数

    レスポンス・コード

    該当なし

    該当なし

    itResourceFieldName

    リテラル

    文字列

    UD_ADUSER_SERVER

    childTableName

    リテラル

    文字列

    UD_CARLICEN

    objectType

    リテラル

    文字列

    User

  12. 「グループ」複数値フィールドの更新プロビジョニング操作を有効にする場合、次の表内のすべての変数について、ステップ8から10を繰り返します。各変数について次の表に示す値を「Map To」、「Qualifier」および「Literal Value」リストから選択してください。
    変数 マップ先 修飾子 リテラル値

    procInstanceKey

    プロセス・データ

    プロセス・インスタンス

    該当なし

    アダプタの戻り変数

    レスポンス・コード

    該当なし

    該当なし

    itResourceFieldName

    リテラル

    文字列

    UD_ADGRP_SERVER

    childTableName

    リテラル

    文字列

    UD_CHILD_PROCESS_FORM_NAME

    objectType

    リテラル

    文字列

    Group

  13. 組織単位複数値フィールドの更新プロビジョニング操作を有効にする場合、次の表内のすべての変数について、ステップ8から10を繰り返します。各変数について次の表に示す値を「Map To」、「Qualifier」および「Literal Value」リストから選択してください。
    変数 マップ先 修飾子 リテラル値

    procInstanceKey

    プロセス・データ

    プロセス・インスタンス

    該当なし

    アダプタの戻り変数

    レスポンス・コード

    該当なし

    該当なし

    itResourceFieldName

    リテラル

    文字列

    UD_ADOU_SERVER

    childTableName

    リテラル

    文字列

    UD_CHILD_PROCESS_FORM_NAME

    objectType

    リテラル

    文字列

    organizationalUnit

  14. 「レスポンス」タブで「追加」をクリックして、少なくともSUCCESSレスポンス・コードをステータスCとともに追加します。これにより、カスタム・タスクが正常に実行されると、タスクのステータスが「完了」として表示されます。
  15. 「Save」アイコンをクリックしてダイアログ・ボックスを閉じ、プロセス定義を保存します。
  16. ステップ1から15を実行するときに次のように変更して、自動車登録番号更新プロセス・タスクを追加します。

    ステップ4を実行するときに子表リストからUD_CARLICENを選択するかわりに、UD_CARLICNを選択します。同じく、「Trigger Type」リストから「Insert」を選択するかわりに「Update」を選択します。

  17. ステップ1から15を実行するときに次のように変更して、自動車登録番号削除プロセス・タスクを追加します。

    ステップ4を実行するときに子表リストからUD_CARLICENを選択するかわりに、UD_CARLICNを選択します。同じく、「Trigger Type」リストから「Insert」を選択するかわりに「Delete」を選択します。

  18. プロセス・タスクで「Save」をクリックします。

リクエスト・データセットの更新

ノート:

リクエストベースのプロビジョニングを有効にした場合のみ、この項で説明する手順を実行します。

プロセス・フォームで属性を追加した場合は、リクエスト・データセット定義を含むXMLファイルも更新します。リクエスト・データセットを更新するには:

  1. テキスト・エディタで、OIM_HOME/dataset/fileディレクトリにあるXMLファイルを編集のために開きます。
  2. AttributeReference要素を追加し、この要素の必須属性の値を指定します。

    たとえば、プロセス・フォームの属性として「Car License」を追加した場合は、次の行を入力します。

    <AttributeReference
    name = "Car License"
    attr-ref = "Car License"
    type = "String"
    widget = "text"
    length = "50"
    available-in-bulk = "false"/>
    

    このAttributeReference要素の属性は次のように指定します。

    • name属性では、プロセス・フォームの「Name」列の値を表名接頭辞を付けずに入力します。

      たとえば、UD_CAR_LICENSEがプロセス・フォームの「Name」列の値である場合、AttributeReference要素のname属性の値としてCar Licenseを指定する必要があります。

    • attr-ref属性では、プロセス・フォームの「Field Label」列に入力した値を入力します。

    • type属性では、プロセス・フォームの「Variant Type」列に入力した値を入力します。

    • widget属性では、プロセス・フォームの「Field Type」列に入力した値を入力します。

    • length属性では、プロセス・フォームの「Length」列に入力した値を入力します。

    • available-in-bulk属性では、バルク・リクエストの作成または変更で属性を使用する必要がある場合にはtrueを指定します。それ以外の場合は、falseを指定します。

    プロセス・フォームに複数の属性を追加した場合は、追加した属性ごとにこのステップを繰り返します。

  3. XMLファイルを保存して閉じます。

サーバー・キャッシュからのデータセットのリクエストに関連するコンテンツのクリア

ノート:

リクエストベースのプロビジョニングを有効にした場合のみ、この項で説明する手順を実行します。

PurgeCacheユーティリティを実行して、サーバー・キャッシュからのデータセットのリクエストに関連するコンテンツをクリアします。PurgeCacheユーティリティの詳細は、Oracle Identity Managerの管理キャッシュのパージに関する項を参照してください。

リクエスト・データセットのインポート

ノート:

リクエストベースのプロビジョニングを有効にした場合のみ、この項で説明する手順を実行します。

XML形式のリクエスト・データセット定義をMDSにインポートします。

この手順の詳細は、「リクエスト・データセットのインポート」を参照してください。

リコンシリエーションおよびプロビジョニング用のターミナル・サービス・フィールドの追加

リコンシリエーション操作およびプロビジョニング操作のためにさらにターミナル・サービス・フィールドを追加できます。

ノート:

この項の情報は、Microsoft Active Directoryターゲット・システムに対して、およびターゲット・システムをターゲット・リソースとして使用する場合にのみ適用できます。

ターミナル・サービス・フィールドがサポートされるのは、Microsoft Active Directoryのみです。Microsoft AD LDSではサポートされません。ターゲット・システムとしてMicrosoft AD LDSを使用している場合、この項を読む必要はありません。

デフォルトでは、リコンシリエーションとプロビジョニングのために次のターミナル・サービス・フィールドが用意されています。

  • AllowLogon

  • TerminalServicesProfilePath

  • TerminalServicesHomeDirectory

必要であれば、リコンシリエーションおよびプロビジョニング操作のために次のターミナル・サービス・フィールドを追加することができます。

  • TerminalServicesInitialProgram

  • TerminalServicesWorkDirectory

  • AllowLogon

  • MaxConnectionTime

  • MaxDisconnectionTime

  • MaxIdleTime

  • ConnectClientDrivesAtLogon

  • ConnectClientPrintersAtLogon

  • DefaultToMainPrinter

  • BrokenConnectionAction

  • ReconnectionAction

  • EnableRemoteControl

  • TerminalServicesProfilePath

  • TerminalServicesHomeDirectory

  • TerminalServicesHomeDrive

ユーザー定義オブジェクト・クラスのコネクタの構成

コネクタ操作用のユーザー定義オブジェクト・クラスまたはカスタム・オブジェクト・クラスについてコネクタを構成できます。

デフォルトでは、Active Directory User Managementコネクタは、Userオブジェクト・クラスをサポートしています。コネクタでコネクタ操作のためにユーザー定義オブジェクト・クラスまたはカスタム・オブジェクト・クラスを使用する場合は、次のようにします。

  1. オブジェクト・クラスを作成し、必須および任意の属性をオブジェクト・クラスに割り当てます。

    オブジェクト・クラスの作成方法は、Microsoft社のドキュメントを参照してください。

    ノート:

    作成したオブジェクト・クラスの親として、userオブジェクト・クラスを割り当てます。

  2. スキーマをリフレッシュします。

  3. プロビジョニングのためのオブジェクト・クラスの必須属性およびオプション属性を追加します。

    ノート:

    プロビジョニングおよびリコンシリエーションの属性マッピングに、(ステップ1で作成した)ユーザー定義のオブジェクト・クラスでサポートされる属性のみが含まれていることを確認します。

  4. Lookup.Configuration.ActiveDirectory参照定義を次のように更新します。

    1. Lookup.Configuration.ActiveDirectory参照定義を検索して開きます。

    2. ObjectClassコード・キー・エントリを検索して、新しいオブジェクト・クラスの名前が含まれるようにそのデコード値を変更します。

    3. オブジェクト・クラスに複数の必須属性が含まれている場合は、新しい参照エントリを次の値を指定して追加します。

      コード・キー: ObjectClassMandatoryAttributes

      デコード: "CUSTOM_MANDATORY_ATTRIBUTE_NAME"

      ノート:

      デコード列に値を追加するときは、複数の必須属性をカンマ(,)で区切る必要があります。たとえば、"CustomIntAttr","CustomStringAttr"です。

    4. 「保存」アイコンをクリックします。

ユーザーへの動的補助オブジェクト・クラスおよびそれらの属性の追加

動的補助オブジェクト・クラスおよびそれらの属性をユーザーに追加できます。

この項で説明する手順を実行するには、フォレストのすべてのドメイン・コントローラがMicrosoft Windows Server 2003以降を実行していて、フォレスト機能モードがMicrosoft Windows Server 2003以降である必要があります。動的補助オブジェクト・クラスの詳細は、次のWebサイトの「Dynamically Linked Auxiliary Classes (Windows)」を参照してください。

http://msdn.microsoft.com/en-us/library/windows/desktop/ms676289%28v=vs.85%29.aspx

動的補助オブジェクト・クラスおよびそれらの属性をユーザーに追加するには、次の手順を実行します。

  1. メイン構成参照定義に動的補助オブジェクト・クラスのエントリを次のように作成します。

    1. 「Administration」を開き、「Lookup Definition」をダブルクリックします。

    2. Lookup.Configuration.ActiveDirectory参照定義を検索して開きます。

    3. 「追加」をクリックし、次のようにコード・キー値とデコード値を入力します。

      コード・キー: 'AccountObjectClasses'

      デコード: "NAME_OF_THE_CUSTOM_AUXILIARY_OBJECT_CLASS"

      ノート:

      デコード列に値を追加するときは、複数の補助クラスをカンマ(,)で区切る必要があります。たとえば、"AuxIntAttr","AuxStringAttr"です。

    4. 動的補助クラスに複数の必須属性が含まれている場合は、新しい参照エントリを次の値を指定して追加します。

      コード・キー: ObjectClassMandatoryAttributes

      デコード: "MANDATORY_ATTRIBUTE_NAME_OF_THE_AUX_CLASS"

      ノート:

      複数の必須属性はカンマ(,)で区切る必要があります。たとえば、"AuxIntAttr","AuxStringAttr"です。

    5. 「保存」アイコンをクリックします。

  2. PurgeCacheユーティリティを実行します。

    ターゲット・リソースのリコンシリエーションおよびプロビジョニングのための(ステップ1で追加した)カスタム補助クラスに属性を追加するには、次の項で説明する手順を実行します。

    ノート:

    これらの項で説明する手順を実行するときは、そのユーザー・オブジェクト・クラスにのみ固有の手順に従ってください。

Group Name (pre-Windows 2000)属性の追加

リコンシリエーションおよびプロビジョニング用のグループ名(pre-Windows 200)属性を追加できます。

この項では、リコンシリエーションおよびプロビジョニングのためのGroup Name (pre-Windows 2000)属性の追加に関連する次のトピックについて説明します。

Group Name (pre-Windows 2000)属性について

Group NameとGroup Name (pre-Windows 2000)は、ターゲット・システムのグループに固有の2つの属性です。Oracle Identity Managerのプロセス・フォームには、「グループ名」フィールドのみが含まれています。デフォルトでは、グループ・プロビジョニング中に、OIMプロセス・フォームの「グループ名」フィールドに指定した値が、Group Name属性およびGroup Name (pre-Windows 2000)属性の値として入力されます。ターゲット・システムのGroup Name属性およびGroup Name (pre-Windows 2000)属性に別の値を指定する場合は、OIMプロセス・フォームにGroup Name (pre-Windows 2000)フィールドを作成する必要があります。

これを行うには、Oracle Identity Managerにリコンシリエーション操作およびプロビジョニング操作用の新しいフィールド(「Group Name Pre Windows」)を追加する必要があります。

リコンシリエーション用のGroup Name Pre Windowsフィールドの追加

リコンシリエーションのためにGroup Name Pre Windowsフィールドを追加するには、次の手順を実行します。

  1. Oracle Identity Manager Design Consoleにログインします。

  2. リソース・オブジェクトのリコンシリエーション・フィールドのリストに、Group Name Pre Windowsフィールドを次のように追加します。

    1. 「Resource Management」を開き、「Resource Objects」をダブルクリックします。

    2. ADグループ・リソース・オブジェクトを検索し、開きます。

    3. 「Object Reconciliation」タブで、「Add Field」をクリックします。

    4. リコンシリエーション・フィールドの追加ダイアログ・ボックスの「フィールド名」フィールドにGroup Name Pre Windowsと入力し、「フィールド・タイプ」リストから「文字列」を選択します。

    5. 「Save」をクリックして、ダイアログ・ボックスを閉じます。

    6. 「Create Reconciliation Profile」をクリックします。これにより、リソース・オブジェクトに行われた変更がMDSにコピーされます。

    7. 「保存」をクリックします。

  3. リコンシリエーション用のLookup.ActiveDirectory.GM.ReconAttrMap参照定義を次のように更新します。

    1. 「Administration」を開き、「Lookup Definition」をダブルクリックします。

    2. Lookup.ActiveDirectory.GM.ReconAttrMap参照定義を検索して開きます。

    3. 「追加」をクリックして、「Group Name Pre Windows」フィールドのエントリを作成します。

    4. コード・キー列に、Group Name Pre Windowsと入力します。デコード列に、sAMAccountNameと入力します。

    5. コード・キー列で、「グループ名」を探し、デコード値をcnに変更します。表4-1に、Lookup.ActiveDirectory.GM.ReconAttrMap参照定義の更新されたエントリのリストを示します。

      表4-1 更新されたLookup.ActiveDirectory.GM.ReconAttrMap参照定義のエントリ

      Oracle Identity Managerのグループ・フィールド Microsoft Active Directoryのフィールド

      Display Name

      displayName

      Group name

      cn

      Group Name Pre Windows

      sAMAccountName

      Group Type

      groupType

      OIM Org Name

      sAMAccountName

      Organization Name[LOOKUP]

      ad_container

      Org Name

      sAMAccountName

      Org Type

      OIM Organization Type

      Unique Id

      __UID__

    6. 「保存」をクリックします。

  4. 次のようにして、プロセス・フォームにGroup Name Pre Windowsフィールドを追加します。

    1. 「開発ツール」を開き、「フォーム・デザイナ」をダブルクリックします。

    2. UD_ADGRPプロセス・フォームを検索し、開きます。

    3. 「Create New Version」「Add」を順にクリックします。

    4. 新しいフィールドの詳細を入力します。「名前」フィールドにUD_ADUSER_GROUPNAME_PREWINDOWS.と入力します。フィールド・ラベル列にGroup Name Pre Windowsと入力します。このフィールドの残りの詳細を入力します。

    5. 「プロパティ」タブで、Group Name Pre Windowsフィールドを選択してプロパティの追加をクリックします。プロパティの追加ダイアログ・ボックスが表示されます。

    6. 「プロパティ名」リストで「必須」を選択します。

    7. 「プロパティ値」フィールドに、Trueと入力します。

    8. 「保存」アイコンをクリックしてダイアログ・ボックスを閉じます。

    9. 「Save」をクリックし、「Make Version Active」をクリックします。

  5. プロビジョニング処理の一部として、新しいフィールドのリコンシリエーション・フィールド・マッピングを、次のようにして作成します。

    1. 「Process Management」を開き、「Process Definition」をダブルクリックします。

    2. ADグループ・プロビジョニング処理を検索し、開きます。

    3. プロビジョニング処理の「Reconciliation Field Mappings」タブで、「Add Field Map」をクリックします。

    4. リコンシリエーション・フィールドのマッピングの追加ダイアログ・ボックスの「フィールド名」フィールドで、Group Name Pre Windowsを選択します。

    5. 「プロセス・データ」フィールドをダブルクリックし、「UD_ADGRP_GROUPNAME_PREWINDOWS」を選択します。

    6. 「Save」をクリックして、ダイアログ・ボックスを閉じます。

    7. 「保存」をクリックします。

  6. 「Resource Management」を開き、「Resource Objects」をダブルクリックします。

  7. 「Create Reconciliation Profile」をクリックします。

プロビジョニング用のGroup Name Pre Windowsフィールドの追加

プロビジョニングのためにGroup Name Pre Windowsフィールドを追加できます。

これを行うには、次の手順を実行します。

「Group Name Pre Windows」フィールドの追加

「リコンシリエーション用のGroup Name Pre Windowsフィールドの追加」のステップ4を実行してプロセス・フォームにフィールドを追加した場合は、フィールドを再度追加する必要はありません。フィールドを追加していない場合は、次のようにします。

  1. Oracle Identity Manager Design Consoleにログインします。
  2. 「開発ツール」を開き、「フォーム・デザイナ」をダブルクリックします。
  3. UD_ADGRPプロセス・フォームを検索し、開きます。
  4. 「Create New Version」「Add」を順にクリックします。
  5. 「名前」フィールドにUD_ADUSER_GROUPNAME_PREWINDOWS.と入力します。
  6. フィールド・ラベル列にGroup Name Pre Windowsと入力します。次に、「グループ名」フィールドに表示されている残りの列の値を入力します。
  7. 「プロパティ」タブで、Group Name Pre Windowsフィールドを選択してプロパティの追加をクリックします。プロパティの追加ダイアログ・ボックスが表示されます。
  8. 「プロパティ名」リストで「必須」を選択します。
  9. 「プロパティ値」フィールドに、Trueと入力します。
  10. 「保存」アイコンをクリックしてダイアログ・ボックスを閉じます。
  11. 「Save」をクリックし、「Make Version Active」をクリックします。

Lookup.ActiveDirectory.GM.ProvAttrMap参照定義の更新

Lookup.ActiveDirectory.GM.ProvAttrMap参照定義をプロビジョニングのために次のように更新します。

  1. 「Administration」を開き、「Lookup Definition」をダブルクリックします
  2. Lookup.ActiveDirectory.GM.ProvAttrMap参照定義を検索して開きます。
  3. 「追加」をクリックして、「Group Name Pre Windows」フィールドのエントリを作成します。
  4. コード・キー列に、Group Name Pre Windowsと入力します。デコード列に、sAMAccountNameと入力します。
  5. コード・キー列で、「グループ名」を探してGroup Name[IGNORE]に置き換え、デコード値をIGNOREDに変更します。表4-1に、Lookup.ActiveDirectory.GM.ProvAttrMap参照定義の更新されたエントリのリストを示します。

    表4-2 更新されたLookup.ActiveDirectory.GM.ProvAttrMap参照定義のエントリ

    Oracle Identity Managerのグループ・フィールド Microsoft Active Directoryのフィールド

    __NAME__

    __NAME__="CN=${Group_Name},${Organization_Name}"

    Display Name

    displayName

    Group Name[IGNORE]

    IGNORED

    Group Name Pre Windows

    sAMAccountName

    Group Type

    groupType

    組織名[LOOKUP,IGNORE]

    IGNORED

    Unique Id

    __UID__

  6. 「保存」をクリックします。

「Group Name Pre Windows」フィールドでの更新プロビジョニング操作の有効化

Group Name Pre Windowsフィールドでの更新プロビジョニング操作を次のように有効化します。

  1. プロビジョニング処理で、フィールドを更新する新しいタスクを、次のようにして作成します。

    1. 「Process Management」を開き、「Process Definition」をダブルクリックします。

    2. ADグループ・プロビジョニング処理を検索し、開きます。

    3. 「追加」をクリックして、次のようにタスクの名前および説明を入力します。

      「タスク名」: Group Name Pre Windows Updated

      「タスクの説明」: Process Task for handling update of the Group Name Pre Windows field.

    4. タスク・プロパティセクションで、条件付き「保留中の取消しを許可」および「複数のインスタンスを許可」フィールドを選択します。

    5. 「保存」をクリックします。

  2. プロビジョニング処理で、次のようにして、「Handler Type」セクションでアダプタ名を選択します。

    1. 「Integration」タブに移動し、「Add」をクリックします。

    2. 「Handler Selection」ダイアログ・ボックスで「Adapter」を選択します。

    3. 「Handler Name」列でadpADIDCUPDATEATTRIBUTEVALUEを選択します。

    4. 「Save」をクリックして、ダイアログ・ボックスを閉じます。

  3. 「Adapter Variable」リージョンでprocInstanceKey変数をクリックします。

  4. 表示されるダイアログ・ボックスで次のマッピングを作成します。

    変数名: procInstanceKey

    マップ先: Process Data

    修飾子: Process Instance

  5. 「Save」をクリックして、ダイアログ・ボックスを閉じます。

  6. 次の表に示すすべての変数に関して、ステップ3から5を繰り返します。各変数について次の表に示す値を「Map To」、「Qualifier」および「Literal Value」リストから選択してください。

    変数 マップ先 修飾子 リテラル値

    procInstanceKey

    プロセス・データ

    プロセス・インスタンス

    該当なし

    アダプタの戻り変数

    レスポンス・コード

    該当なし

    該当なし

    itResourceFieldName

    リテラル

    文字列

    UD_ADGRP_SERVER

    attrFieldName

    リテラル

    文字列

    Group Name Pre Windows

    objectType

    リテラル

    文字列

    Group

  7. 「レスポンス」タブで「追加」をクリックして、少なくともSUCCESSレスポンス・コードをステータスCとともに追加します。これにより、カスタム・タスクが正常に実行されると、タスクのステータスが「完了」として表示されます。

  8. 「Save」アイコンをクリックしてダイアログ・ボックスを閉じ、プロセス定義を保存します。

アダプタの更新

グループ名の更新プロセス・タスクがadpADIDCUPDATEATTRIBUTEVALUESアダプタを呼び出す場合

  1. adpADIDCUPDATEATTRIBUTEVALUESアダプタを削除して、adpADIDCUPDATEATTRIBUTEVALUEアダプタを追加します。
  2. 「Integration」タブの「アダプタ変数」リージョンで、「procInstanceKey」変数をクリックします。
  3. 表示されるダイアログ・ボックスで次のマッピングを作成します。

    変数名: procInstanceKey

    マップ先: Process Data

    修飾子: Process Instance

  4. 「Save」をクリックして、ダイアログ・ボックスを閉じます。
  5. 次の表に示すすべての変数に関して、ステップ2から4を繰り返します。各変数について次の表に示す値を「Map To」、「Qualifier」および「Literal Value」リストから選択してください。
    変数 マップ先 修飾子 リテラル値

    procInstanceKey

    プロセス・データ

    プロセス・インスタンス

    該当なし

    アダプタの戻り変数

    レスポンス・コード

    該当なし

    該当なし

    itResourceFieldName

    リテラル

    文字列

    UD_ADGRP_SERVER

    attrFieldName

    リテラル

    文字列

    Group Name

    objectType

    リテラル

    文字列

    Group

リクエスト・データセットの更新

ノート:

リクエストベースのプロビジョニングを有効にする場合のみ、この項で説明する手順を実行します。

プロセス・フォームで属性を追加した場合は、リクエスト・データセット定義を含むXMLファイルも更新します。リクエスト・データセットを更新するには:

  1. テキスト・エディタで、OIM_HOME/dataset/fileディレクトリにあるXMLファイルを編集のために開きます。
  2. AttributeReference要素を追加し、この要素の必須属性の値を指定します。

    たとえば、「Group Name Pre Windows」フィールドの追加で説明した手順の実行中にプロセス・フォームに属性としてEmployee IDを追加した場合は、次の行を入力します。

    <AttributeReference
    name = "GroupName PreWindows"
    attr-ref = "Group Name Pre Windows"
    type = "String"
    widget = "text"
    length = "70"
    available-in-bulk = "false"/>
    

    このAttributeReference要素の属性は次のように指定します。

    • name属性では、プロセス・フォームの「Name」列の値を表名接頭辞を付けずに入力します。

      たとえば、UD_ADUSER_GROUPNAME_PREWINDOWSがプロセス・フォームの「名前」列の値である場合、AttributeReference要素のname属性の値としてGroupName PreWindowsを指定する必要があります。

    • attr-ref属性の場合は、「Group Name Pre Windows」フィールドの追加で説明した手順の実行中にプロセス・フォームのフィールド・ラベル列に入力した値を入力します。

    • type属性の場合は、「Group Name Pre Windows」フィールドの追加で説明した手順の実行中にプロセス・フォームのバリアント・タイプ列に入力した値を入力します。

    • widget属性の場合は、「Group Name Pre Windows」フィールドの追加で説明した手順の実行中にプロセス・フォームのフィールド・タイプ列に入力した値を入力します。

    • length属性の場合は、「Group Name Pre Windows」フィールドの追加で説明した手順の実行中にプロセス・フォームの「長さ」列に入力した値を入力します。

    • available-in-bulk属性では、バルク・リクエストの作成または変更で属性を使用する必要がある場合にはtrueを指定します。それ以外の場合は、falseを指定します。

    「Group Name Pre Windows」フィールドの追加で説明した手順の実行中に、プロセス・フォームで複数の属性を追加した場合は、追加した属性ごとにこのステップを繰り返します。

  3. XMLファイルを保存して閉じます。

PurgeCacheユーティリティの実行

ノート:

リクエストベースのプロビジョニングを有効にする場合のみ、この項で説明する手順を実行します。

PurgeCacheユーティリティを実行して、サーバー・キャッシュからのデータセットのリクエストに関連するコンテンツをクリアします。PurgeCacheユーティリティの詳細は、Oracle Identity Managerの管理キャッシュのパージに関する項を参照してください。

MDSへのリクエスト・データセット定義のインポート

ノート:

リクエストベースのプロビジョニングを有効にする場合のみ、この項で説明する手順を実行します。

XML形式のリクエスト・データセット定義をMDSにインポートします。

信頼できるソースのリコンシリエーション用の新規フィールド

信頼できるソースのリコンシリエーション用に新規フィールドを追加できます。

ノート:

リコンシリエーション用に追加する新しいフィールドに文字列形式のデータのみが格納されていることを確認する必要があります。Oracle Identity Managerにはバイナリ・フィールドを送信しないでください。

デフォルトでは、表1-22に示した属性が、リコンシリエーション用にOracle Identity Managerとターゲット・システム間でマップされます。必要に応じて、信頼できるソースのリコンシリエーション用に新しいフィールドを追加できます。このセクションのトピックは次のとおりです:

信頼できるソースのリコンシリエーション用に新規フィールドを追加するステップのまとめ

信頼できるソースのリコンシリエーション用に新規フィールドを追加するには、次のステップを実行する必要があります。

  1. 信頼できるソースのリコンシリエーション用の新規フィールドのターゲット・システム名を決定します。詳細は、信頼できるソースのリコンシリエーション用の新規フィールドのターゲット・システム名の決定を参照してください。
  2. 信頼できるソースのリコンシリエーション用に新しいフィールドを追加します。詳細は、信頼できるソースのリコンシリエーション用の新規フィールドの追加を参照してください。

信頼できるソースのリコンシリエーション用の新規フィールドのターゲット・システム名の決定

信頼できるソースのリコンシリエーション用に新しいフィールドを追加する前に、まず、次のようにしてターゲット・システム・フィールドの名前を特定する必要があります。

  1. ターゲット・システムのスキーマがまだインストールされていない場合は、インストールします。

    スキーマのインストールの詳細は、Microsoft社のWebサイトを参照してください。

    ノート:

    ADSIEditツールを使用すると、ターゲット・システムのスキーマをインストールして使用しなくても、追加するフィールドの名前を決定できます。このツールの使用方法の詳細は、Microsoft社のWebサイトを参照してください。

  2. ターゲット・システムのスキーマを開きます。
  3. 「コンソール ルート」フォルダを展開し、ターゲット・システムのスキーマを展開し、続いて「クラス」をダブルクリックします。
  4. 「ユーザー」を右クリックし、「プロパティ」を選択します。

    「属性」タブに、ターゲット・システムで現在使用されている属性(フィールド)が表示されます。

  5. 追加するフィールドの名前を書き留め、「キャンセル」をクリックします。

    たとえば、リコンシリエーション用に「Employee ID」フィールドを追加する場合は、employeeIDをノートにとります。

信頼できるソースのリコンシリエーション用の新規フィールドの追加

信頼できるソースのリコンシリエーション用に新しいフィールドを追加するには、次のようにします。

  1. Oracle Identity Manager Design Consoleにログインします。

  2. 次のようにして、OIMユーザー・プロセス・フォームに新しいフィールドを追加します。

    ノート:

    • Oracle Identity Manager 11gリリース1 PS1以降を使用している場合は、「Identity Manager - 拡張管理」ページを使用してUDFを作成する必要があります。

    • Oracle Identity Manager 11gリリース2以降を使用している場合、UDFの作成については、Oracle Identity Managerの管理のカスタム属性の構成を参照してください。

    1. 「管理」を開きます。

    2. 「User Defined Field Definition」をダブルクリックします。

    3. Usersフォームを検索して開きます。

    4. 「Add」をクリックしてフィールドの詳細を入力します。

      たとえば、「Employee ID」フィールドを追加する場合、「Name」フィールドにEmployee IDと入力してデータ型を「String」に設定し、列名としてUSR_UDF_EMPLOYEE_IDと入力してフィールド・サイズ値を入力します。

    5. 「保存」をクリックします。

  3. リソース・オブジェクトのリコンシリエーション・フィールドのリストに、次のようにして、新しいフィールドを追加します。

    1. 「Resource Management」フォルダを開きます。

    2. 「リソース・オブジェクト」をダブルクリックします。

    3. 次のリソース・オブジェクトのうち1つを検索して開きます。

      ユーザーの場合: AD User Trusted

      グループの場合: AD Group

      組織単位の場合: AD Organizational Unit

    4. 「Object Reconciliation」タブで、「Add field」をクリックします。

    5. フィールドの詳細を入力して「Save」をクリックします。

      たとえば、「Field Name」フィールドにEmployee IDを入力し、フィールド・タイプのリストから「String」を選択します。

      この手順でこの後、リコンシリエーションのための参照定義の中に作成するエントリのデコード値として、フィールド名を入力します。

    6. 「Create Reconciliation Profile」をクリックします。これにより、リソース・オブジェクトに行われた変更がMDSにコピーされます。

  4. 次のようにして、新しいフィールド用のリコンシリエーション・フィールド・マッピングを作成します。

    1. 「プロセス管理」を開きます。

    2. 「プロセス定義」をダブルクリックします。

    3. AD User Trustedプロセス定義を検索して開きます。

    4. 「Reconciliation Field Mappings」タブで、「Add Field Map」をクリックします。

    5. 「Field Name」フィールドで、追加するフィールドの値を選択します。

      たとえば、「Employee ID = Employee ID」を選択します。

    6. 「保存」をクリックします。

  5. リコンシリエーションの参照定義で、次のようにして、フィールドのエントリを作成します。

    1. 「Administration」を開き、「Lookup Definition」をダブルクリックします。

    2. Lookup.ActiveDirectory.UM.ReconAttrMap.Trusted参照定義を検索して開きます。

      Microsoft AD LDSを使用している場合は、Lookup.ActiveDirectoryLDS.UM.ReconAttrMap.Trusted参照定義を検索して開きます。

    3. 「Add」をクリックし、フィールドのコード・キー値とデコード値を入力します。コード・キー値は、AD User Trustedリソース・オブジェクトに作成されたフィールド名にする必要があります。デコード値は、ターゲット・システムの対応するフィールドの名前です。

      ノート:

      ターゲット・システム・フィールドには、ターゲット・システムと同じ大文字または小文字を使用する必要があります。フィールド名では、大/小文字が区別されるためです。

      たとえば、「Code Key」フィールドにはemployeeID、「Decode」フィールドにはEmployee IDと入力します。

    4. 「保存」をクリックします。

  6. 「Field Type」を選択し、「Save」をクリックします。

リコンシリエーション中のデータの変換の構成

要件に応じて、リコンサイルされた単一値アカウント・データの変換を構成できます。たとえば、User NameおよびLast Name値を使用して、Oracle Identity Managerの「氏名」フィールドの値を作成できます。

ノート:

この項ではオプションの手順を説明します。この手順は、リコンシリエーション時のデータの変換を構成する場合にのみ実行します。

要件に応じて、リコンサイルしたデータの変換を構成することができます。たとえば、外部システムのフィールド名の参照を自動化して、フィールド名に基づいた値を設定できます。

データの変換を構成するには:

  1. 必要な変換ロジックをJavaクラスに実装するコードを記述します。

    クラスの基準は、次の名前とシグネチャを含むメソッドを持つことのみです。

    public Object transform(HashMap hmUserDetails, HashMap hmEntitlementDetails, String sField) {}
    

    次に、サンプル変換クラスを示します。

    import java.util.*;
    public class MyTransformer {
     
          /*
          Description:Abstract method for transforming the attributes
          param hmUserDetails<String,Object>
          HashMap containing parent data details
          param hmEntitlementDetails <String,Object>
          HashMap containing child data details
          */
    	  
          public Object transform(HashMap hmUserDetails, HashMap hmEntitlementDetails, String sField) {
          /*
           * You must write code to transform the attributes.
           Parent data attribute values can be fetched by
           using hmUserDetails.get("Field Name").
           *To fetch child data values, loop through the
           * ArrayList/Vector fetched by hmEntitlementDetails.get("Child Table")
           * Return the transformed attribute.
           */
          String firstName= (String)hmUserDetails.get("First Name");
          firstName= "blahPrefix" + firstName + "blahSuffix";
          System.out.println("First Name Value is changed to: " + firstName);
          return firstName;
          }
    } /* End */
    

    このクラスに定義されるメソッドにより、First Name属性の名の前にblahPrefix、後にblahSuffixが付けられて値が変換され、変換された値が返されます。

  2. Javaクラスを保持するJARファイルを作成します。

  3. Oracle Identity Manager JARアップロード・ユーティリティを実行して、JARファイルをOracle Identity Managerデータベースに投稿します。このユーティリティは、Oracle Identity Managerのインストール時に次の場所にコピーされます。

    ノート:

    このユーティリティを使用する前に、Oracle WebLogic ServerをインストールしたディレクトリにWL_HOME環境変数が設定されていることを確認してください。

    Microsoft Windowsの場合:

    OIM_HOME/server/bin/UploadJars.bat

    UNIXの場合:

    OIM_HOME/server/bin/UploadJars.sh

    ユーティリティを実行すると、Oracle Identity Manager管理者のログイン資格証明、Oracle Identity Managerホスト・コンピュータのURL、コンテキスト・ファクトリ値、アップロードするJARファイルのタイプおよびJARファイルがアップロードされる場所の入力を求めるプロンプトが表示されます。JARタイプの値として1を指定します。

  4. 変換の参照定義に、次のようにしてエントリを追加します。

    1. Design Consoleにログインします。

    2. Lookup.ActiveDirectory.UM.ReconTransformation参照定義を検索して開きます。

    3. 「Code Key」列に、変換を適用する属性のリコンシリエーション・フィールドの名前を入力します。たとえば、First Nameです。

    4. 「Decode」列に、クラス・ファイルの名前を入力します。たとえば: com.transformationexample.MyTransformer

    5. 参照定義に変更を保存します。

    ノート:

    信頼できるソースのリコンシリエーション時のデータの変換を構成するには、次のエントリをLookup.ActiveDirectory.UM.Configuration.Trusted参照定義に追加します。

    • コード・キー値: Recon Transformation Lookup

    • デコード値: Lookup.ActiveDirectory.UM.ReconTransformation

リコンシリエーションおよびプロビジョニング中のデータ検証の構成

要件に応じて、リコンサイルおよびプロビジョニングされた単一値データの検証を構成できます。たとえば、「名」属性からフェッチしたデータを検証して、そのデータに番号記号(#)が含まれていないことを確認します。また、プロセス・フォームの「名」フィールドに入力したデータを検証して、プロビジョニング操作中にターゲット・システムに番号記号(#)が送信されないようにします。

データの検証を構成するには:

  1. 必要な検証ロジックをJavaクラスに実装するコードを記述します。

    この検証クラスには、検証メソッドを実装する必要があります。

    関連項目:

    このインタフェースの詳細は、コネクタに同梱されているJavadocを参照してください。

    次のサンプル検証クラスは、「名」属性の値に番号記号(#)が含まれるかどうかを確認します。

    package com.validate;
    import java.util.*;
    public class MyValidation {
    public boolean validate(HashMap hmUserDetails,
    HashMap hmEntitlementDetails, String field) {
    /*
    * You must write code to validate attributes. Parent
    * data values can be fetched by using hmUserDetails.get(field)
    * For child data values, loop through the
    * ArrayList/Vector fetched by hmEntitlementDetails.get("Child Table")
    * Depending on the outcome of the validation operation,
    * the code must return true or false.
    */
    /*
    * In this sample code, the value "false" is returned if the field
    * contains the number sign (#). Otherwise, the value "true" is
    * returned.
    */
    boolean valid=true;
    String sUserID=(String) hmUserDetails.get(field);
    for(int i=0;i<sUserID.length();i++){
    if (sUserID.charAt(i) == '#'){
    valid=false;
    break;
    }
    }
    return valid;
    }
    }
    
  2. Javaクラスを保持するJARファイルを作成します。

  3. Oracle Identity Manager JARアップロード・ユーティリティを実行して、JARファイルをOracle Identity Managerデータベースに投稿します。このユーティリティは、Oracle Identity Managerのインストール時に次の場所にコピーされます。

    ノート:

    このユーティリティを使用する前に、Oracle WebLogic ServerをインストールしたディレクトリにWL_HOME環境変数が設定されていることを確認してください。

    Microsoft Windowsの場合:

    OIM_HOME/server/bin/UploadJars.bat

    UNIXの場合:

    OIM_HOME/server/bin/UploadJars.sh

    ユーティリティを実行すると、Oracle Identity Manager管理者のログイン資格証明、Oracle Identity Managerホスト・コンピュータのURL、コンテキスト・ファクトリ値、アップロードするJARファイルのタイプおよびJARファイルがアップロードされる場所の入力を求めるプロンプトが表示されます。JARタイプの値として1を指定します。

  4. リコンシリエーションのプロセス・フォーム・フィールドを検証するJavaクラスを作成した場合は、次の手順を実行します。

    1. Design Consoleにログインします。

    2. Lookup.ActiveDirectory.UM.ReconValidation参照定義を検索して開きます。

    3. 「Code Key」列に、リソース・オブジェクト・フィールド名を入力します。「Decode」列には、クラス名(たとえば、com.validate.MyValidation)を入力します。

    4. 参照定義に変更を保存します。

    5. Lookup.ActiveDirectory.UM.Configuration参照定義を検索して開きます。

    6. Recon Validation Lookupエントリの値がLookup.ActiveDirectory.UM.ReconValidationに設定されていることを確認します。

    7. 参照定義に変更を保存します。

  5. プロビジョニングのプロセス・フォーム・フィールドを検証するJavaクラスを作成した場合は、次の手順を実行します。

    1. Design Consoleにログインします。

    2. Lookup.ActiveDirectory.UM.ProvValidation参照定義を検索して開きます。

    3. 「Code Key」列に、プロセス・フォーム・フィールド名を入力します。「Decode」列には、クラス名(たとえば、com.validate.MyValidation)を入力します。

    4. 参照定義に変更を保存します。

    5. Lookup.ActiveDirectory.UM.Configuration参照定義を検索して開きます。

    6. Provisioning Validation Lookupエントリの値がLookup.ActiveDirectory.UM.ProvValidationに設定されていることを確認します。

    7. 参照定義に変更を保存します。

これで、データの検証を構成するための手順が完了します。検証チェックで合格しないデータについては、次のメッセージが表示されるか、ログ・ファイルに記録されます。

フィールドFIELD_NAMEに返された値はfalseです。

複数のドメインにわたるリコンシリエーションおよびプロビジョニング操作の有効化

Microsoft Active Directory User Managementコネクタでは、1つのフォレストの複数ドメインにわたるリコンシリエーションおよびプロビジョニング操作がサポートされます。

ノート:

この項の情報は、ターゲット・システムとしてMicrosoft Active Directoryを使用している場合のみ適用されます。Microsoft AD LDSをターゲット・システムとして使用している場合、複数ドメインでのリコンシリエーションおよびプロビジョニング操作の有効化はサポートされません。

リコンシリエーションはグローバル・カタログ・サーバーを使用して実行され、プロビジョニング操作はLDAP参照を使用して実行されます。

複数のドメインにわたるリコンシリエーションおよびプロビジョニングを有効化する場合、次の項で説明する手順を実行します。

複数のドメインにわたるリコンシリエーションの有効化の理解

次の項は、複数のドメインにわたるリコンシリエーションの有効化を理解するために役立ちます。

複数のドメインにわたるリコンシリエーションの有効化について

複数のドメインにわたるリコンシリエーションを実行する場合、このコネクタはドメイン・コントローラとグローバル・カタログ・サーバーの両方を使用して、ターゲット・システムからレコードをフェッチします。

リコンシリエーション時に、グローバル・カタログ・サーバーのレコードがコネクタにフェッチされます。レコードがコネクタにフェッチされた後で、distinguishedName属性とuSNChanged属性の値が読み取られます。コネクタはdistinguishedNameを使用することにより、実際のデータを含むドメイン・コントローラに対してLDAP問合せを実行します(ここで参照が使用されます)。グローバル・カタログ・サーバーにはレコードの部分的なセットしか含まれないため、この方法がリコンシリエーションで使用されます。完全なデータはドメイン・コントローラからしかフェッチできません。

すべてのレコードがOracle Identity Managerにフェッチされると、リコンシリエーション・エンジンが、グローバル・カタログ・サーバーが実行しているドメイン・コントローラのuSNChanged属性の最大値でスケジュール済ジョブのLatest Token属性を更新します。次回のリコンシリエーション実行からは、uSNChanged属性値がLatest Token属性の現在値よりも大きいレコードのみがグローバル・カタログ・サーバーからフェッチされます。したがって、ターゲット・システムでレコードが更新されると、グローバル・カタログ・サーバーでそのレコードのuSNChanged属性を更新する必要があります。こうすることで、直前のリコンシリエーション以降に更新されたレコードをコネクタが検出して、Oracle Identity Managerにフェッチできます。

複数のドメインにわたるリコンシリエーションの有効化

複数のドメインにわたるリコンシリエーションを有効化するには:

  1. 次のいずれかの参照定義でSearchChildDomainsエントリの値をyesに設定します。

    信頼できるソースのリコンシリエーションの場合: Lookup.Configuration.ActiveDirectory.Trusted

    ターゲット・リソースのリコンシリエーションの場合: Lookup.Configuration.ActiveDirectory

  2. SyncGlobalCatalogServer ITリソース・パラメータの値として、グローバル・カタログ・サーバーをホストしているドメイン・コントローラの名前を指定します。

ノート:

  • 構成参照定義のSearchChildDomainsエントリの値がyesに設定され、このITリソースのSyncGlobalCatalogServerパラメータの値が指定されていない場合、コネクタはグローバル・カタログ・サーバーを自ら判別します。SearchChildDomainsエントリとSyncGlobalCatalogServer ITリソース・パラメータの値を指定することを強くお薦めします。

  • クロスドメイン環境でグループ・リコンシリエーションを実行する場合、コネクタによってフェッチされるアカウントのグループは、そのアカウントが存在しているドメイン・コントローラが認識するもののみです。

  • ITリソースのLDAPHostNameパラメータには値を入力しないことをお薦めします。コネクタは、グローバル・カタログ・サーバーから識別名を取得した後に、正しいドメイン・コントローラを自動的に見つけて、完全なユーザー情報をフェッチします。LDAPHostNameパラメータに値を指定すると、コネクタはその値を無視し、ADSI参照機能を使用して、(ユーザー情報をフェッチするための)適切なドメイン・コントローラを判別します。

複数のドメインにわたるプロビジョニングの有効化の理解

ターゲット・システムの親子デプロイメント環境では、複数のドメインにわたるプロビジョニング操作を実行する前に、ターゲット・システムのITリソースが親ドメインを使用して構成されることが予期されます。ターゲット・システムのレプリケーション環境では、複数のドメインにわたるプロビジョニング操作を実行する前に、ターゲット・システムのITリソースが任意のドメイン・コントローラを使用して構成されることが予期されます。

このシナリオを次の例を使用して説明します。

親ドメインがdc1、子ドメインがdc2の親子ドメイン環境があるとします。ターゲット・システムのITリソースは、dc1をLDAPHostNameパラメータの値として、親ドメインの名前をDomainNameパラメータの値として含むように構成されます。

プロビジョニングの際に、子ドメインに所属する組織、複数のドメインにわたる複数のグループ、および親ドメインのマネージャを選択すると、ADSI (Active Directory Service Interfaces)によってLDAP参照が内部的に使用されます。これは、すべてのコネクタ操作がADSIに対して行われるためです。これにより、ITリソースに子ドメインの詳細を指定しなくても、子ドメインでのアカウントの作成が可能になります。

プロビジョニング操作で選択される組織によって異なりますが、このようなすべての情報が内部的に計算されます。コネクタでは、参照追跡のオプションがAllに設定されます。この場合、ドメイン・コントローラによって参照が提供されると、すべての参照が追跡されます。したがって、複数のドメインにわたるプロビジョニングを有効にするために明示的な構成手順は必要ありません。

関連項目:

LDAP参照の詳細はADSIのドキュメントを参照してください。

複数の信頼できるソースのリコンシリエーション用のコネクタの使用について

複数の信頼できるソースのリコンシリエーションのためにコネクタを使用できます。

次に、組織のユーザー・データに対して複数の信頼できるソースが存在する場合の例を示します。

  • ターゲット・システムの1つは、従業員に関するデータの信頼できるソースです。2つ目のターゲット・システムは、契約者に関するデータの信頼できるソースです。3つ目のターゲット・システムは、インターンに関するデータの信頼できるソースです。

  • 1つのターゲット・システムは、OIMユーザーを構成する一部のアイデンティティ・フィールドのデータを保持します。他の2つのシステムは、残りのアイデンティティ・フィールドのデータを保持します。つまり、OIMユーザーを作成するには、3つのシステム全部からデータをリコンサイルする必要があります。

組織のオペレーティング環境がこれらのシナリオのいずれかで説明されている環境に類似する場合、このコネクタを使用すると、組織のユーザー・データの信頼できるソースの1つとしてターゲット・システムを使用できるようになります。

ターゲット・システムの複数のインストール

複数のターゲット・システムを含む環境でActive Directory User Managementコネクタを使用できます。

複数のターゲット・システム・インストールに関連するトピックを次に示します。

ターゲット・システムの複数のインストールについて

ノート:

この項の情報は、Microsoft AD LDSにも適用されます。

この項で説明する手順を実行するのは、ターゲット・システムの複数のインストールが環境にあり、このコネクタによって管理されるスキーマを共有している場合です。そのようなシナリオで、Oracle Identity Managerリリース11.1.1.xを使用している場合は、ITリソース情報のみを変更する必要があります。Oracle Identity Managerリリース11.1.2.xを使用している場合は、ITリソース情報を変更して、アプリケーション・インスタンスを作成する必要があります。

また、使用しているOracle Identity Managerのリリースにかかわらず、スケジュール済タスクをレプリケートする必要があります。基礎となるワークフローおよびプロセス・フォームは、ターゲット・システムのすべてのインストール環境で共有されます。

環境にターゲット・システムの複数のインストールがあるが、スキーマが異なる場合があります(つまり、様々な属性のセットをコネクタを使用して管理する必要があるときです。言い換えると、様々なプロセス・フォームやワークフローなどが必要です)この場合には、コネクタのクローニング機能を使用する必要があります。コネクタのクローニングの詳細は、Microsoft Active Directory User Managementコネクタのクローニングについてを参照してください。

Microsoft Active Directoryの複数のインストールに対してコネクタを構成する場合があります。次の例でこの要件について説明します。

Example Multinational Inc.の東京、ロンドンおよびニューヨークの事業所には、独自にMicrosoft Active Directoryがインストールされています。最近、この会社では、Oracle Identity Managerをインストールし、これを構成してインストールされたすべてのMicrosoft Active Directoryをリンクしようとしています。

このような例で示される要件に対応するには、Microsoft Active Directoryの複数のインストールに対するコネクタを構成する必要があります。

ターゲット・システムの複数のインストールに対してコネクタを構成するステップの概要を次に示します。

  1. ターゲット・システムの複数のインストールに対してコネクタを構成します。

  2. ターゲット・システムの複数のインスタンスで、プロビジョニング操作の実行の前提条件となるステップを実行します。

  3. プロビジョニング操作を実行します。

ターゲット・システムの複数のインストールに対するコネクタの構成

ターゲット・システムの複数のインストールに対してコネクタを構成するには、次のようにします。

  1. ターゲット・システム・インストールごとにITリソースが1つずつ存在するように、Active Directory ITリソース・タイプのITリソースを作成します。Oracle Identity Managerリリース11.1.2.x以降を使用している場合は、ITリソースを作成することに加えて、アプリケーション・インスタンスを作成する必要があります。

    ITリソースのパラメータに指定する値の詳細は、Microsoft ADおよびAD LDSのITリソースの構成を参照してください。

  2. ターゲット・システム・インストールごとにリコンシリエーションのスケジュール済タスクのコピーを作成します。スケジュール済タスクを作成する際に、スケジュール済タスクの作成対象となるターゲット・システム・インストールに対応する属性値を指定します。

    スケジュール済タスクの属性に指定する値の詳細は、リコンシリエーションのスケジュール済ジョブを参照してください。

  3. Oracle Identity Managerの参照定義をターゲット・システムの参照フィールド値と手動で同期させます。

ターゲット・システムの複数のインストールでのプロビジョニング実行の前提条件

プロセス・フォームの「User Principal Name」フィールドは、「User ID」フィールドの値とUPN Domain ITリソース・パラメータの値を事前移入されます。Oracle Identity Managerリリース11.1.1.xでプロビジョニング操作を実行して、プロビジョニング操作時に異なるITリソースに切り替える前に、ITリソースを、「ユーザー・プリンシパル名」フィールドのマップ先に変更する必要があります。

  1. 「Development Tools」を開き、「Form Designer」をダブルクリックします。
  2. AD Userフォームを検索して開きます。
  3. 「Pre-Populate」タブで、「User Principal Name」行をダブルクリックします。
  4. 事前移入アダプタ・ダイアログ・ボックスで、現在使用中のITリソース(たとえば、Active Directory)をダブルクリックします。
  5. 「Map Adapter Variables」ダイアログ・ボックスの「Qualifier」リストで、使用するITリソースを選択します。たとえば、「Active Directory」を選択します。次に「Save」アイコンをクリックしてダイアログ・ボックスを閉じます。
  6. 「Pre-Population adapter」ダイアログ・ボックスで、「Save」アイコンをクリックしてダイアログ・ボックスを閉じます。
  7. Form Designerフォームの「Save」アイコンをクリックします。

Oracle Identity Managerでのプロビジョニング操作の実行

プロビジョニング操作を実行するときに、次のようにします。

  • Oracle Identity Managerリリース11.1.1.xの場合:

    管理およびユーザー・コンソールを使用してプロビジョニングを実行するときは、ユーザーをプロビジョニングするMicrosoft Active Directoryインストールに対応するITリソースを指定できます。

  • Oracle Identity Managerリリース11.1.2.x以降の場合:

    「Oracle Identity Managerリリース11.1.2以降でのプロビジョニング操作の実行」で説明されている手順を実行します。

ユーザーの作成プロビジョニング操作後のホーム・ディレクトリの作成

「ユーザーの作成」プロビジョニング操作の後に、ホーム・ディレクトリ更新のプロセス・タスクを開始できます。

次の項では、「ユーザーの作成」プロビジョニング操作の後にホーム・ディレクトリ更新のプロセス・タスクを開始する手順を説明します。

「ユーザーの作成」プロビジョニング操作後のホーム・ディレクトリの作成について

ユーザーの作成プロビジョニング操作を実行するときに、「ホーム・ディレクトリ」フィールドの値を指定できます。ただし、すべてのドメイン・コントローラへのこの情報のリプリケートが遅延して、次のエラーが発生することがあります。

セキュリティID構造が無効です。

この問題を回避するには、ユーザーの作成プロビジョニング操作が正常に完了した後に、ホーム・ディレクトリを作成します。これは、ユーザーの作成プロビジョニング操作が正常に完了した後に開始される新しいプロセス・タスクを作成することによって実現できます。

ノート:

ユーザーの作成プロビジョニング操作の際に、「ホーム・ディレクトリ」フィールドの値を指定しないでください。ユーザーの作成プロビジョニング操作が正常に完了した後に、UpdateHomeDirTaskプロセス・タスクによってプロセス・フォームの「ホーム・ディレクトリ」フィールドが更新されます。これにより、ホーム・ディレクトリの更新タスクがトリガーされ、ユーザーのホーム・ディレクトリ情報を更新して、ターゲット・システムにホーム・ディレクトリが作成されます。

UpdateHomeDirectoryFieldアダプタの作成

ユーザーのホーム・ディレクトリを更新できるアダプタ(たとえば、UpdateHomeDirectoryField)を作成する必要があります。UpdateHomeDirectoryFieldアダプタを作成するには:

  1. Design Consoleにログインします。

  2. 「開発ツール」を開き、「アダプタ・ファクトリ」をダブルクリックします。

  3. 「アダプタ・ファクトリ」フォームの「アダプタ名」フィールドに、アダプタの名前を入力します(たとえば、UpdateHomeDirectoryField)。

  4. アダプタ・タイプ参照フィールドをダブルクリックします。表示された「参照」ウィンドウで、「プロセス・タスク」を選択します。

  5. 「説明」フィールドに、アダプタの説明(This adapter is used to update the home directory for a user.など)を入力します。

  6. 「保存」アイコンをクリックします。

    アダプタが作成されて、Oracle Identity Managerデータベースに格納されます。

  7. 次のようにして、アダプタ変数を追加します。

    1. 「アダプタ・ファクトリ」フォームで、変数リスト・タブをクリックします。

    2. 「追加」をクリックします。

      変数の追加ウィンドウが表示されます。

    3. 「変数名」フィールドに、アダプタ変数の名前(networkShareなど)を入力します。

    4. 「タイプ」メニューで、「文字列」を選択します。

    5. 「マップ先」メニューで実行時に解決を選択します。

    6. 「保存」アイコンをクリックしてウィンドウを閉じます。

    7. 「追加」をクリックして、別の変数を追加します。

    8. 「変数名」フィールドに、アダプタ変数の名前(sAMAccountNameなど)を入力します。

    9. 「タイプ」メニューで、「文字列」を選択します。

    10. 「マップ先」メニューで実行時に解決を選択します。

    11. 「保存」アイコンをクリックしてウィンドウを閉じます。

  8. ユーティリティ・タイプのアダプタ・タスクを次のように作成します。

    1. Adapter Tasksタブで、「追加」をクリックします。

    2. アダプタ・タスクの選択ダイアログ・ボックスで、ユーティリティ・タスクを選択し、ユーティリティ・タスクのリストからユーティリティが選択されていることを確認して、「続行」をクリックします。

    3. Object Instance Selectionダイアログ・ボックスで、New Object Instanceが選択されていることを確認し、「続行」をクリックします。アダプタ・ファクトリ・タスクの追加ダイアログ・ボックスが表示されます。

    4. 「タスク名」フィールドにHomeDirUpdateTaskと入力します。

    5. アプリケーションAPI リストから「com.thortech.xl.util.adapters.tcUtilStringOperations」を選択します。

    6. 「メソッド」リストから「com.thortech.xl.util.adapters.tcUtilStringOperations#performConcat()」を選択します。

    7. 「保存」アイコンをクリックします。

    8. アダプタ変数をメソッドの入力に、メソッドの出力をアダプタの戻り値にマップします。

    9. 「設定」をクリックします。

    10. 「保存」アイコンをクリックしてダイアログ・ボックスを閉じます。

  9. 「アダプタ・ファクトリ」フォームで「ビルド」アイコンをクリックします。

    アダプタが再作成されると、コンパイルのステータス・フィールドにOKステータスが表示されます。

  10. 「保存」アイコンをクリックします。

ADユーザーのプロセス定義の更新

アダプタを作成した後は、新規作成したアダプタが含まれる新しいプロセス・タスクを含めるように、ADユーザーのプロセス定義を更新する必要があります。これを行うには、次のようにします。

  1. 「プロセス管理」を開いて、「プロセス定義」をダブルクリックします。

  2. AD Userプロセス定義を検索して開きます。

  3. UpdateHomeDirTaskプロセス・タスクを次のように作成します。

    1. 「タスク」タブで、「追加」をクリックします。

      新しいタスクの作成ダイアログ・ボックスが表示されます。

    2. 「タスク名」フィールドに、プロセス・タスクの名前を入力します(たとえば、UpdateHomeDirTask)。

    3. Task Properties リージョンで、条件付き「複数のインスタンスを許可」の順に選択して、完了するために必須の選択を解除します。

    4. 「保存」アイコンをクリックします。

  4. 「Integration」タブの「イベント・ハンドラ」/「アダプタ」リージョンで、「追加」をクリックします。

    Handler Selection ダイアログ・ボックスが表示されます。

  5. 「アダプタ」オプションを選択して、「ハンドラ名」リージョンに表示されたアダプタのリストから「UpdateHomeDirectoryField」(「UpdateHomeDirectoryFieldアダプタの作成」で作成したアダプタ)を選択します。これにより、UpdateHomeDirectoryFieldアダプタがUpdateHomeDirTaskプロセス・タスクに割り当てられます。

  6. 「保存」アイコンをクリックしてダイアログ・ボックスを閉じます。

  7. 「Integration」タブの「アダプタ変数」リージョンで、「networkShare」アダプタ変数を選択します。

  8. 「マップ」をクリックします。

  9. 変数のデータ・マッピングの編集ダイアログ・ボックスで、次のマッピングを作成します。

    変数名: networkShare

    リテラル値: \\MY_SERVER\MY_SHARED_FOLDER\

  10. 「保存」アイコンをクリックしてダイアログ・ボックスを閉じます。

  11. 「Integration」タブの「アダプタ変数」リージョンで、「sAMAccountName」アダプタ変数を選択します。

  12. 変数のデータ・マッピングの編集ダイアログ・ボックスで、次のマッピングを作成します。

    変数名: sAMAccountName

    マップ先: Process Data

    「リテラル値」: 値がディレクトリ名である、プロセス・フォームのフィールド・ラベル。リテラル値は、通常、「ユーザーID」フィールドです。

  13. 「保存」アイコンをクリックして、変数のデータ・マッピングの編集ダイアログ・ボックスを閉じます。

  14. 「プロセス定義」フォームの「保存」アイコンをクリックします。

ユーザーの作成プロセス・タスクの更新

次のように、新しく作成したタスクを「ユーザーの作成」プロセス・タスクに割り当てる必要があります。

  1. 「プロセス管理」を開いて、「プロセス定義」をダブルクリックします。
  2. AD Userプロセス定義を検索して開きます。
  3. 「タスク」タブで、「ユーザーの作成」をダブルクリックします。
  4. タスクの編集ダイアログ・ボックスの「レスポンス」タブで、「成功」応答コードを選択します。
  5. 生成するタスク・リージョンで、「割当て」をクリックします。
  6. 「割当て」ウィンドウで、(「ADユーザーのプロセス定義の更新」で作成した)「UpdateHomeDirTask」タスクを選択します。
  7. 「OK」をクリックします。

    UpdateHomeDirTaskタスクがプロセス・タスクに割り当てられます。

  8. 「プロセス定義」フォームの「保存」アイコンをクリックします。

セキュリティ・グループ - ユニバーサル・グループ・タイプのプロビジョニング・グループ用のコネクタの構成

セキュリティ・グループ - ユニバーサルグループ・タイプを作成するには、このグループ・タイプをLookup.ActiveDirectory.GroupTypes参照定義に追加します。

ターゲット・システムに作成できるグループには6種類あります。デフォルトでは、このコネクタは5つのグループ・タイプのみで出荷され、それらはOracle Identity Managerで作成するグループとして選択できます。セキュリティ・グループ - ユニバーサル・グループ・タイプを作成する場合は、このグループ・タイプをLookup.ActiveDirectory.GroupTypes参照定義に次のように追加する必要があります。

  1. Design Consoleにログインします。
  2. 「Administration」を開き、「Lookup Definition」をダブルクリックします。
  3. Lookup.ActiveDirectory.GroupTypes参照定義を検索して開きます。
  4. 「追加」をクリックします。
  5. 追加された新しい行に、次の値を入力します。

    コード・キー: - 2147483640

    デコード: Security Group - Universal

  6. 「保存」アイコンをクリックします。

    これで、Oracle Identity Managerを使用してグループを作成するときに、-2147483640を検索してセキュリティ・グループ - ユニバーサル・グループ・タイプを選択できます。

カスタム・オブジェクト・カテゴリをプロビジョニングおよびリコンサイルするためのコネクタの構成

カスタム・オブジェクト・カテゴリをプロビジョニングまたはリコンサイルできます。

ノート:

この項で説明する手順は、ターゲット・システムとしてAD LDSを使用している場合にのみ適用されます。

デフォルトでは、コネクタがプロビジョニングまたはリコンサイルすることができるのは、個人カテゴリのオブジェクトのみです。カスタム・オブジェクト・カテゴリをプロビジョニングまたはリコンサイルする場合は、この項で説明する手順を実行してください。この項の内容は次のとおりです。

信頼できるソースのリコンシリエーション用のカスタム・オブジェクト・カテゴリの追加

信頼できるソースのリコンシリエーション中に、カスタム・オブジェクト・カテゴリに属するレコードをリコンサイルするようにコネクタを構成するには、次の手順を実行します。

  1. Active Directory User Trusted Reconタスクと同様の新しいタスクを作成します。つまり、Active Directory User Trusted Reconタスクをクローニングします。
  2. 新しく作成されたスケジュール済タスクに、objectCategory属性を追加します。

    新しいタスクは、カスタム・オブジェクト・カテゴリの信頼できるソースのリコンシリエーションを実行できる状態です。

この項で作成したスケジュール済タスクを使用して信頼できるソースのリコンシリエーションを実行すると、コネクタはobjectCategory属性の値として指定したカスタム・オブジェクトのレコードを取得します。objectCategory属性に値を指定しないと、個人カテゴリのオブジェクトがフェッチされます。

ターゲット・リソースのリコンシリエーション用のカスタム・オブジェクト・カテゴリの追加

ターゲット・リソースのリコンシリエーション中にカスタム・オブジェクト・カテゴリに属するレコードをリコンサイルするようにコネクタを構成するには、次の手順を実行します。

  1. スケジュール済タスクに固有の次の変更を行います。

    1. Active Directory User Target Reconタスクと同様の新しいスケジュール済タスクを作成します。つまり、Active Directory User Target Reconタスクをクローニングします。

    2. 新しく作成されたスケジュール済タスクに、objectCategory属性を追加します。

      新しいタスクは、カスタム・オブジェクト・カテゴリのターゲット・リソースのリコンシリエーションを実行できる状態です。

  2. プロセス・フォームを次のように変更します。

    1. 「開発ツール」を開き、「フォーム・デザイナ」をダブルクリックします。

    2. UD_ADUSERプロセス・フォームを検索し、開きます。

    3. 「Create New Version」「Add」を順にクリックします。

    4. 「名前」フィールドにUD_ADUSER_OBJCATEGORYと入力します。

    5. フィールド・ラベル列にObject Categoryと入力します。次に、その他の列にも値を入力します。

    6. 「プロパティ」タブで、オブジェクト・カテゴリ・フィールドを選択して、プロパティの追加をクリックします。

    7. プロパティの追加ダイアログ・ボックスで、「参照コード」プロパティを追加して、値にLookup.ActiveDirectory.ObjectCategoryを設定します。

    8. 「Save」をクリックし、「Make Version Active」をクリックします。

  3. Lookup.ActiveDirectory.ObjectCategoryという参照定義を作成します。

  4. リソース・オブジェクトを次のように変更します。

    1. 「Resource Management」を開き、「Resource Objects」をダブルクリックします。

    2. AD Userリソース・オブジェクトを検索し、開きます。

    3. 「Object Reconciliation」タブで、「Add Field」をクリックします。

    4. 「リコンシリエーション・フィールドの追加」ダイアログ・ボックスで、「フィールド名」フィールドにObject Categoryと入力して、「フィールド・タイプ」リストから「文字列」を選択します。

    5. 「Save」をクリックして、ダイアログ・ボックスを閉じます。

    6. 「保存」をクリックします。

  5. プロセス定義を変更します。

    1. 「Process Management」を開き、「Process Definition」をダブルクリックします。

    2. AD Userプロビジョニング処理を検索し、開きます。

    3. プロビジョニング処理の「Reconciliation Field Mappings」タブで、「Add Field Map」をクリックします。

    4. リコンシリエーション・フィールドのマッピングの追加ダイアログ・ボックスの「フィールド名」フィールドでオブジェクト・カテゴリを選択します。

    5. 「プロセス・データ」フィールドをダブルクリックし、「UD_ADUSER_OBJCATEGORY」を選択します。

    6. 「Save」をクリックして、ダイアログ・ボックスを閉じます。

    7. 「保存」をクリックします。

  6. 「Create Reconciliation Profile」をクリックします。これにより、リソース・オブジェクトに行われた変更がMDSにコピーされます。

  7. PurgeCacheユーティリティを実行します。

  8. 次のようにして参照定義を変更します。

    1. 「Administration」を開き、「Lookup Definition」をダブルクリックします。

    2. Lookup.ActiveDirectoryLDS.UM.ReconAttrMap参照定義を検索して開きます。

    3. 「追加」をクリックして、「Object Category」フィールドのエントリを作成します。

    4. コード・キー列に、Object Categoryと入力します。デコード列に、objectCategoryと入力します。

    5. 「保存」をクリックします。

この項で作成したスケジュール済タスクを使用してターゲット・リソースのリコンシリエーションを実行すると、コネクタはobjectCategory属性の値として指定したカスタム・オブジェクトのレコードを取得します。objectCategory属性に値を指定しないと、個人カテゴリのオブジェクトがフェッチされます。

プロビジョニング用のカスタム・オブジェクト・カテゴリの追加

カスタム・オブジェクト・カテゴリに属するアカウントをプロビジョニングするようにコネクタを構成するには、次の手順を実行します。

  1. ターゲット・システムのすべてのカスタム・オブジェクト・カテゴリのリスト(識別名を含む)を作成します。

  2. Lookup.ActiveDirectory.ObjectCategory参照定義を次のように変更します。

    1. 「Administration」を開き、「Lookup Definition」をダブルクリックします。

    2. Lookup.ActiveDirectory.ObjectCategory参照定義を検索して開きます。

    3. 「追加」をクリックします。

    4. 次の形式で値を入力します。

      コード・キー: IT_RESOURCE_KEY~CUST_OBJ_CATG_DN

      この書式では、IT_RESOURCE_KEYはOracle Identity Managerで各ITリソースに割り当てられた数値コードであり、CUST_OBJ_CATG_DNはカスタム・オブジェクト・カテゴリの識別名です。

      サンプル値: 23~CN=customPerson,CN=Schema,CN=Configuration,CN={D14B37E9-778C-4312-99B3-FF3AA0DE99C6}

      デコード: IT_RESOURCE_NAME~CUST_OBJ_CATG_DN

      この書式では、IT_RESOURCE_KEYはITリソースの名前であり、CUST_OBJ_CATG_DNはカスタム・オブジェクト・カテゴリの識別名です。

      サンプル値: ADLDSITResource~CN=customPerson,CN=Schema,CN=Configuration,CN={D14B37E9-778C-4312-99B3-FF3AA0DE99C6}

    5. ステップ2.cおよび2.dを繰り返して、ステップ1で収集したすべての識別名を追加します。

    6. 「保存」をクリックします。

  3. Lookup.ActiveDirectoryLDS.UM.ProvAttrMap参照定義を変更します。

    1. 「Administration」を開き、「Lookup Definition」をダブルクリックします。

    2. Lookup.ActiveDirectoryLDS.UM.ProvAttrMap参照定義を検索して開きます。

    3. 「追加」をクリックします。

    4. コード・キー列に、Object Category[LOOKUP]と入力します。デコード列に、object Categoryと入力します。

    5. 「保存」をクリックします。

  4. PurgeCacheユーティリティを実行します。

ノート:

この項で説明した手順を実行すると、プロビジョニング操作中に、オブジェクト・カテゴリ参照フィールドからオブジェクト・カテゴリを選択できます。オブジェクト・カテゴリ・フィールドの更新を有効にするには、ADユーザー・プロセス定義にプロセス・タスク(たとえば、Object Category Updated)を作成します。ADIDC Update Attribute Valueアダプタを必ず使用してください。