プライマリ・コンテンツに移動
Oracle® Identity Manager Microsoft Exchangeコネクタ・ガイド
11.1.1
B72409-14
目次へ移動
目次

前
次

4 コネクタの機能拡張

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

ノート:

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

この章には次の項が含まれます:

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

デフォルトでは、いくつかのフィールドが、Oracle Identity Managerとターゲット・システム間のリコンシリエーション用にマップされます。必要に応じて、追加のフィールドをリコンシリエーション用にマップできます。

ノート:

この項ではオプションの手順を説明します。この手順は、ターゲット・リソースのリコンシリエーション用に新規単一値フィールドを追加する場合にのみ実行します。表C-1にMicrosoft Exchangeでサポートされる単一値フィールドを示します。

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

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

  2. 次のようにして、新しいバージョンのプロセス・フォームを作成します。

    1. 「Development Tools」を開きます。

    2. 「Form Designer」をダブルクリックします

    3. UD_EXCHANGEプロセス・フォームを検索して開きます。

    4. 「Create New Version」をクリックします。

      新規バージョンの作成ダイアログ・ボックスで、「ラベル」フィールドに新しいバージョンを入力して「保存」アイコンをクリックします。

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

    1. 「Add」をクリックします。

      リストにフィールドが追加されます。フィールドの詳細を入力します。

      たとえば、CustomAttribute1フィールドを追加する場合は、「名前」フィールドにUD_EXCHANGE_CUSTOM1と入力してから、このフィールドのその他の詳細を入力します。

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

    3. 新規作成したフォームをアクティブ化するには、バージョンのアクティブ化をクリックします。

      図4-1はプロセス・フォームの新規バージョンのサンプルのスクリーンショットです。

      図4-1 プロセス・フォームの新規バージョンの追加

      図4-1の説明が続きます
      「図4-1 プロセス・フォームの新規バージョンの追加」の説明
  4. リソース・オブジェクトのリコンシリエーション・フィールドのリストに、次のようにして、新しいフィールドを追加します。

    1. 「Resource Management」を開きます。

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

    3. 「Exchange User」リソース・オブジェクトを検索して開きます。

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

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

      たとえば、「フィールド名」フィールドにCustomAttribute1と入力し、「フィールド・タイプ」リストから「文字列」を選択します。

      この手順でこの後、Lookup.Exchange.UM.ReconAttrMap参照定義の中に作成するエントリのコード・キー値として、フィールド名を入力します。

    6. リコンシリエーション・プロファイルの作成をクリックします。

      これにより、リソース・オブジェクトに行われた変更がMDSにコピーされます。

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

      図4-2は新たに追加されたリコンシリエーション・フィールドのサンプルのスクリーンショットです。

      図4-2 新規リコンシリエーション・フィールドの追加

      図4-2の説明が続きます
      「図4-2 新規リコンシリエーション・フィールドの追加」の説明
  5. 次のようにして、プロセス・フォームの新規フィールドに、リコンシリエーション・フィールド・マッピングを作成します。

    1. 「Process Management」を開きます。

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

    3. 「Process Definition」表から、「Exchange User」リソース・オブジェクトを検索して開きます。

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

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

      たとえば、CustomAttribute1を選択します。

    6. 「Field Type」フィールドで、事前移入されているフィールドのタイプを選択します。

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

      プロセス・データ列のリストが表示されます。リストから、プロセス・データ・フィールドに対応するプロセス・データ列を選択します。

      たとえば、CustomAttribute1 = UD_EXCHANGE_ CUSTOM1を選択します。

      図4-3は新たに追加されたリコンシリエーション・フィールド・マッピングのサンプルのスクリーンショットです。

      図4-3 リコンシリエーション・フィールド・マッピングの追加

      図4-3の説明が続きます
      「図4-3 リコンシリエーション・フィールド・マッピングの追加」の説明
    8. 保存アイコンをクリックします。

      図4-4はリコンシリエーション・フィールド・マッピングのサンプルのスクリーンショットです。

      図4-4 リコンシリエーション・フィールド・マッピング

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

    1. 「administration」を展開します

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

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

    4. 「Add」をクリックし、フィールドのコード・キー値とデコード値を入力します。

      コード・キーの値は、フォーム・フィールドの名前にする必要があります。デコードの値は、ターゲット・システムの属性の名前にする必要があります。

      たとえば、コード・キー・フィールドにCustom Attribute 1と入力し、デコード・フィールドにCustomAttribute1と入力します。

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

      図4-5はリコンシリエーション参照定義に新たに追加されたエントリのサンプルのスクリーンショットです。

      図4-5 リコンシリエーション参照へのエントリの追加

      図4-5の説明が続きます
      「図4-5 リコンシリエーション参照へのエントリの追加」の説明
  7. 「リソース・オブジェクト」フォームで、リコンシリエーション・プロファイルの作成をクリックします。

    これにより、リソース・オブジェクトに行われた変更がMDSにコピーされます。

  8. Oracle Identity Managerリリース11.1.2.x以降を使用している場合は、新しいUIフォームを作成してこれをアプリケーション・インスタンスに添付し、この新しい属性を表示します。手順は、「新規UIフォームの作成」および「新規フォームによる既存アプリケーション・インスタンスの更新」を参照してください。

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

デフォルトでは、いくつかのフィールドが、Oracle Identity Managerとターゲット・システム間のリコンシリエーション用にマップされます。必要に応じて、追加のフィールドをリコンシリエーション用にマップできます。

ノート:

この項ではオプションの手順を説明します。この手順は、ターゲット・リソースのリコンシリエーション用に新規複数値フィールドを追加する場合にのみ実行します。表C-2および表C-3にMicrosoft Exchangeでサポートされる複数値フィールドを示します。

次のステップのうち一部のサンプルのスクリーンショットは、「ターゲット・リソース・リコンシリエーション用の新規フィールドの追加」を参照してください。

Oracle Identity Manager 11.1.2を使用する場合は、「Oracle Identity Manager 11.1.2のカスタム複数値属性の参照定義の定義」に記載されている関連手順の説明を参照してください。

4.2.1 新規複数値フィールドの追加

プロセス・フォームに新しいフィールドを作成し、子表を割り当てることによって、新しい複数値フィールドを追加し、これらの新しいフィールドをリソース・オブジェクトに追加してリコンシリエーション・フィールド・マッピングを作成できます。次に、リコンシリエーションの参照定義でこの新しいフィールドのエントリを作成します。

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

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

  2. 次のようにして、新しいバージョンのプロセス・フォームを作成します。

    1. 「Development Tools」を開きます。

    2. 「Form Designer」をダブルクリックします

    3. UD_EX_CH1など、新しいフォームを作成します。

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

    1. 「Add」をクリックします。

      リストにフィールドが追加されます。フィールドの詳細を入力します。

      たとえば、AcceptMessagesOnlyFromフィールドを追加する場合は、「名前」フィールドにUD_EX_CH1_ACCEPTと入力してから、このフィールドのその他の詳細を入力します。

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

    3. 新規作成したフォームをアクティブ化するには、バージョンのアクティブ化をクリックします。

  4. 次のように、UD_EX_CH1を子表としてUD_EXCHANGEフォームに割り当てます。

    1. UD_EXCHANGEプロセス・フォームを検索して開きます。

    2. 「Create New Version」をクリックします。

      新規バージョンの作成ダイアログ・ボックスで、「ラベル」フィールドに新しいバージョンを入力して「保存」アイコンをクリックします。

    3. 「現行バージョン」ドロップダウンから作成した新規バージョンを選択します。

    4. 子表タブをクリックします。

    5. 「割当て」をクリックして、UD_EX_CH1フォームの新しく作成した(アクティブな)バージョンを選択します。

    6. 「バージョンをアクティブにする」をクリックします。

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

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

    1. 「Resource Management」を開きます。

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

    3. 「Exchange User」リソース・オブジェクトを検索して開きます。

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

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

      たとえば、「フィールド名」フィールドにMultiValuedFormと入力し、「フィールド・タイプ」リストから「複数値属性」を選択します。

    6. MultiValuedForm [複数値]を右クリックして、プロパティ・フィールドの定義を選択します。

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

      たとえば、「フィールド名」フィールドにAcceptMessagesOnlyFromと入力し、「フィールド・タイプ」リストから「文字列」を選択します。

      この手順でこの後、Lookup.Exchange.UM.ReconAttrMap参照定義の中に作成するエントリのコード・キー値として、フィールド名を入力します。

    8. リコンシリエーション・プロファイルの作成をクリックします。

      これにより、リソース・オブジェクトに行われた変更がMDSにコピーされます。

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

  6. 次のようにして、プロセス・フォームの新規フィールドに、リコンシリエーション・フィールド・マッピングを作成します。

    1. 「Process Management」を開きます。

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

    3. 「Process Definition」表から、「Exchange User」リソース・オブジェクトを検索して開きます。

    4. リコンシリエーション・フィールド・マッピングをクリックします。

    5. MultiValuedForm [複数値]を右クリックして、表マップの編集を選択します。

    6. 「フィールド名」および「表名」を選択します。

      たとえば、「フィールド名」にMultiValuedForm、「表名」にUD_EX_CH1を選択します。

    7. MultiValuedForm [複数値]を右クリックして、プロパティ・フィールド・マップの定義を選択します。

    8. 「フィールド名」およびプロセス・データ・フィールドを選択します。

      たとえば、「フィールド名」にAcceptMessagesOnlyFrom、プロセス・データ・フィールドにUD_EX_CH1_ACCEPTを選択します。

    9. 「Key Field for Reconciliation」チェック・ボックスを選択します。

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

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

    1. 「administration」を展開します

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

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

    4. 「Add」をクリックし、フィールドのコード・キー値とデコード値を入力します。

      コード・キーの値は、ソース・オブジェクトに入力したリコンシリエーション・フィールドの名前にする必要があります。デコードの値は、ターゲット・システムの属性の名前にする必要があります。

      たとえば、コード・キー・フィールドにMultiValuedForm~AcceptMessagesOnlyFromと入力します。この値は、AcceptMessagesOnlyFromがMultiValuedForm = UD_EX_CH1で表される子フォームに追加されたフィールドであることを示します。

      次に、デコード・フィールドにAcceptMessagesOnlyFromと入力します。

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

  8. 「リソース・オブジェクト」フォームで、リコンシリエーション・プロファイルの作成をクリックします。

    これにより、リソース・オブジェクトに行われた変更がMDSにコピーされます。

  9. Oracle Identity Managerリリース11.1.2.x以降を使用している場合は、新しいUIフォームを作成してこれをアプリケーション・インスタンスに添付し、この新しい属性を表示します。手順は、「新規UIフォームの作成」および「新規フォームによる既存アプリケーション・インスタンスの更新」を参照してください。

4.2.2 複数値フィールドとしてのセカンダリ電子メール・アドレスの追加

次に示すのは、ターゲット・リソース・リコンシリエーション用にセカンダリ・メール・アドレスを複数値フィールドとして追加する手順の例です。

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

  2. 次のようにして、新しいバージョンのプロセス・フォームを作成します。

    1. 「Development Tools」を開きます。

    2. 「Form Designer」をダブルクリックします。

    3. 次の値を入力して新しいフォームを作成します。

      表名: UD_EX_PROXY

      説明: Exchange Proxy Address

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

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

    1. 「Additional Columns」タブで、「Add」をクリックします。

    2. 新規追加された行に、フィールドの詳細を入力します。

      たとえば、ProxyAddressFormフィールドを追加する場合は、名前フィールドにUD_EX_PROXY_ADDRESSと入力してから、このフィールドの詳細情報を次のように入力します。

      バリアント型: String

      長さ: 129

      フィールド・ラベル: Proxy Address

      フィールド・タイプ: textField

      順序: 1

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

    4. 新規作成したフォームをアクティブ化するには、バージョンのアクティブ化をクリックします。

  4. 次のように、UD_EX_PROXYフォームを子表としてUD_EXCHANGEフォームに割り当てます。

    1. 「Development Tools」を開きます。

    2. 「Form Designer」をダブルクリックします。

    3. UD_EXCHANGEプロセス・フォームを検索して開きます。

    4. 「Create New Version」をクリックします。

      新規バージョンの作成ダイアログ・ボックスで、「ラベル」フィールドに新しいバージョンを入力して「保存」アイコンをクリックします。

    5. 作成された新しいバージョンを現行バージョンのドロップダウン・リストで選択します。

    6. 「子表」タブの「割当て」をクリックして、UD_EX_PROXYフォームの、新しく作成した(アクティブな)バージョンを選択します。

    7. 「バージョンをアクティブにする」をクリックします。

    8. 「Save」アイコンをクリックします。

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

    1. 「Resource Management」を開きます。

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

    3. 「Exchange User」リソース・オブジェクトを検索して開きます。

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

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

      「フィールド名」フィールドにMultiValuedFormと入力し、「フィールド・タイプ」リストから「複数値属性」を選択します。

    6. MultiValuedForm [複数値]を右クリックして、プロパティ・フィールドの定義を選択します。

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

      「フィールド名」フィールドにProxyAddressFormと入力し、「フィールド・タイプ」リストから「文字列」を選択します。

      この手順でこの後、Lookup.Exchange.UM.ReconAttrMap参照定義の中に作成するエントリのコード・キー値として、フィールド名を入力します。

    8. リコンシリエーション・プロファイルの作成をクリックします。

      これにより、リソース・オブジェクトに行われた変更がMDSにコピーされます。

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

  6. 次のようにして、プロセス・フォームの新規フィールドに、リコンシリエーション・フィールド・マッピングを作成します。

    1. 「Process Management」を開きます。

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

    3. 「Process Definition」表から、「Exchange User」リソース・オブジェクトを検索して開きます。

    4. リコンシリエーション・フィールド・マッピングをクリックします。

    5. MultiValuedForm [複数値]を右クリックして、表マップの編集を選択します。

    6. 「フィールド名」および「表名」を選択します。

      フィールド名としてMultiValuedFormを選択し、表名としてUD_EX_PROXYを選択します。

    7. MultiValuedForm [複数値]を右クリックして、プロパティ・フィールド・マップの定義を選択します。

    8. 「フィールド名」およびプロセス・データ・フィールドを選択します。

      フィールド名としてProxyAddressFormを選択し、プロセス・データ・フィールドとしてUD_EX_PROXY_ADDRESSを選択します。

    9. 保存アイコンをクリックします。

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

    1. 「administration」を展開します

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

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

    4. 「Add」をクリックし、フィールドのコード・キー値とデコード値を入力します。

      コード・キーの値は、ソース・オブジェクトに入力したリコンシリエーション・フィールドの名前にする必要があります。デコードの値は、ターゲット・システムの属性の名前にする必要があります。

      コード・キー・フィールドにMultiValuedForm~ProxyAddressFormと入力します。この値は、ProxyAddressFormが、MultiValuedFormで表される子フォーム(= UD_EX_PROXY)に追加されたフィールドであることを示します。

      次に、デコード・フィールドにEmailAddressesと入力します。

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

  8. 「リソース・オブジェクト」フォームで、リコンシリエーション・プロファイルの作成をクリックします。

    これにより、リソース・オブジェクトに行われた変更がMDSにコピーされます。

  9. Oracle Identity Managerリリース11.1.2.x以降を使用している場合は、新しいUIフォームを作成してこれをアプリケーション・インスタンスに添付し、この新しい属性を表示します。手順は、「新規UIフォームの作成」および「新規フォームによる既存アプリケーション・インスタンスの更新」を参照してください。

4.2.3 Oracle Identity Manager 11.1.2のカスタム複数値属性の参照定義の定義

Oracle Identity Managerリリース11.1.2.x以降のコネクタに追加したすべての新しいカスタム複数値属性には、属性を権限として使用できるようにするために参照定義を定義する必要があります。

ノート:

カスタム複数値属性を権限として扱う必要がある場合は、次の手順を実行します。そうでない場合は、子フォームを使用して直接これらの属性の値を指定できます。

これらの参照定義に値を移入するスケジュール済タスクはないため、手動で追加する必要があります。これを行うには:

  1. 前述の説明のとおりに、カスタム複数値属性(たとえばAcceptMessagesOnlyFrom)を追加します。
  2. Lookup.Exchange.AcceptMessagesのような新しい参照定義を定義します。その後、いくつかの値を手動で追加します。次に例を示します。

    コード・キー: 23~CN=exch21 exch21L,OU=samarth,DC=extest,DC=com

    デコード・キー: exchblr~CN=exch21 exch21L,OU=samarth,DC=extest,DC=com

  3. フォーム・デザイナで、新しい子フォームを追加する際、フィールド・タイプとしてTextFieldのかわりにLookupFieldを選択します。
  4. 新しいフォームで、「プロパティ」タブをクリックし、「プロパティの追加」をクリックします。

    その後、次の値を追加します。

    プロパティ名 = Lookup Code

    プロパティ値 = "Lookup.Exchange.AcceptMessages"

  5. 「プロパティの追加」をクリックし、次の値を追加します。

    プロパティ名 = Entitlement

    プロパティ値 = true

  6. 権限リストおよびカタログ同期化ジョブを実行します。

    これで、権限から新しい子フォーム・データを管理できます。

  7. 新しいUIフォームを作成し、アプリケーション・インスタンスにアタッチして新しい属性を表示可能にします。手順は、「新規UIフォームの作成」および「新規フォームによる既存アプリケーション・インスタンスの更新」を参照してください。

4.3 プロビジョニング用の新規フィールドの追加

デフォルトでは、いくつかのフィールドが、Oracle Identity Managerとターゲット・システム間のプロビジョニング用にマップされます。必要に応じて、追加のフィールドをプロビジョニング用にマップできます。

ノート:

この項ではオプションの手順を説明します。この手順は、プロビジョニング用に新規単一値フィールドを追加する場合にのみ実行します。表C-1にMicrosoft Exchangeでサポートされる単一値フィールドを示します。

次のステップのうち一部のサンプルのスクリーンショットは、「ターゲット・リソース・リコンシリエーション用の新規フィールドの追加」を参照してください。

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

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

  2. 新しいバージョンのプロセス・フォームを作成します。

    1. 「Development Tools」を開きます。

    2. 「Form Designer」をダブルクリックします。

    3. UD_EXCHANGEプロセス・フォームを検索して開きます。

    4. 「Create New Version」をクリックします。

      新規バージョンの作成ダイアログ・ボックスで、「ラベル」フィールドに新しいバージョンを入力して「保存」アイコンをクリックします。

  3. プロセス・フォームに新しいフィールドを追加します。

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

    1. 「Add」をクリックします。

      リストにフィールドが追加されます。フィールドの詳細を入力します。

      たとえば、CustomAttribute1フィールドを追加する場合は、「名前」フィールドにUD_EXCHANGE_CUSTOM1と入力してから、このフィールドのその他の詳細を入力します。

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

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

    1. 「administration」を展開します

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

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

    4. 「Add」をクリックし、フィールドのコード・キー値とデコード値を入力します。

      コード・キーの値は、フォーム・フィールドの名前にする必要があります。デコードの値は、ターゲット・システムの属性の名前にする必要があります。

      たとえば、コード・キー・フィールドにCustom Attribute 1と入力し、デコード・フィールドにCustomAttribute1と入力します。

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

  5. 次のように、プロセス・タスクを作成して、新規フィールドCustom Attribute 1を更新します。

    1. 「Process Management」を開きます。

    2. 「プロセス定義」をダブルクリックしてExchangeユーザー・プロセス定義を開きます。

    3. 次のようにして、プロセス定義にフィールドの更新用の新しいタスクを追加します。

      • 「追加」をクリックして、Custom Attribute 1 Updatedなどのタスク名およびタスクの説明を入力します。

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

        Conditional

        Allow Multiple Instances

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

        図4-6は新規プロセス・タスクのサンプルのスクリーンショットです。

        図4-6 新規プロセス・タスクの追加

        図4-6の説明が続きます
        「図4-6 新規プロセス・タスクの追加」の説明
    4. 「統合」タブで「追加」「アダプタ」の順にクリックします。

    5. adpExchangeUpdateUserアダプタを選択して、「保存」をクリックし、表示されるメッセージ内の「OK」をクリックします。

      図4-7は新規プロセス・タスク用のアダプタを選択するサンプルのスクリーンショットです。

      図4-7 新規プロセス・タスク用のアダプタの選択

      図4-7の説明が続きます
      「図4-7 新規プロセス・タスク用のアダプタの選択」の説明
    6. 次の表にリストされているアダプタ変数をマッピングするには、アダプタを選択して「マップ」をクリックし、次の表の値に類似した値を指定します。

      変数名 データ型 マップ先 修飾子 リテラル値

      アダプタの戻り値

      Object

      レスポンス・コード

      該当なし

      該当なし

      attrFieldName

      String

      リテラル

      String

      カスタム属性1

      itResourceFieldName

      String

      リテラル

      String

      UD_EXCHANGE_SERVER

      objectType

      String

      リテラル

      String

      ユーザー

      processInstanceKey

      Long

      プロセス・データ

      プロセス・インスタンス

      該当なし

      図4-8は新規プロセス・タスク用のアダプタ変数のサンプルのスクリーンショットです。

      図4-8 新規プロセス・タスク用のアダプタ変数のマッピング

      図4-8の説明が続きます
      「図4-8 新規プロセス・タスク用のアダプタ変数のマッピング」の説明
    7. 「レスポンス」タブで「追加」をクリックして、次のレスポンス・コードを追加します。

      コード名 説明 ステータス

      ERROR

      エラーが発生した

      R

      UNKNOWN

      不明な応答を受信した

      R

      SUCCESS

      操作が完了した

      C

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

  6. Oracle Identity Managerリリース11.1.2.x以降を使用している場合は、新しいUIフォームを作成してこれをアプリケーション・インスタンスに添付し、この新しい属性を表示します。手順は、「新規UIフォームの作成」および「新規フォームによる既存アプリケーション・インスタンスの更新」を参照してください。

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

デフォルトでは、いくつかのフィールドが、Oracle Identity Managerとターゲット・システム間のプロビジョニング用にマップされます。必要に応じて、追加のフィールドをプロビジョニング用にマップできます。

ノート:

この項ではオプションの手順を説明します。プロビジョニング用に新しい複数値フィールドを追加する場合のみ、この手順を実行します。表C-2および表C-3にMicrosoft Exchangeでサポートされる複数値フィールドを示します。

次のステップのうち一部のサンプルのスクリーンショットは、「ターゲット・リソース・リコンシリエーション用の新規フィールドの追加」および「プロビジョニング用の新規フィールドの追加」を参照してください。

Oracle Identity Manager 11.1.2を使用する場合は、「Oracle Identity Manager 11.1.2のカスタム複数値属性の参照定義の定義」に記載されている関連手順の説明を参照してください。

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

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

  2. 次のようにして、新しいバージョンのプロセス・フォームを作成します。

    1. 「Development Tools」を開きます。

    2. 「Form Designer」をダブルクリックします

    3. UD_EX_CH1など、新しいフォームを作成します。

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

    1. 「Add」をクリックします。

      リストにフィールドが追加されます。フィールドの詳細を入力します。

      たとえば、AcceptMessagesOnlyFromフィールドを追加する場合は、「名前」フィールドにUD_EX_CH1_ACCEPTと入力してから、このフィールドのその他の詳細を入力します。

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

    3. 新規作成したフォームをアクティブ化するには、バージョンのアクティブ化をクリックします。

  4. 次のように、UD_EX_CH1を子表としてUD_EXCHANGEフォームに割り当てます。

    1. UD_EXCHANGEプロセス・フォームを検索して開きます。

    2. 「Create New Version」をクリックします。

      新規バージョンの作成ダイアログ・ボックスで、「ラベル」フィールドに新しいバージョンを入力して「保存」アイコンをクリックします。

    3. 「現行バージョン」ドロップダウンから作成した新規バージョンを選択します。

    4. 子表タブをクリックします。

    5. 「割当て」をクリックして、UD_EX_CH1フォームの新しく作成した(アクティブな)バージョンを選択します。

    6. 「バージョンをアクティブにする」をクリックします。

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

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

    1. 「administration」を展開します

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

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

    4. 「Add」をクリックし、フィールドのコード・キー値とデコード値を入力します。

      コード・キーの値は、フォーム・フィールドの名前にする必要があります。デコードの値は、ターゲット・システムの属性の名前にする必要があります。

      たとえば、コード・キー・フィールドにUD_EX_CH1~AcceptMessagesOnlyFromと入力します。この値は、AcceptMessagesOnlyFromがUD_EX_CH1で表される子フォームに追加されたフィールドであることを示します。

      次に、デコード・フィールドにAcceptMessagesOnlyFromと入力します。

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

  6. 新たに作成した子フォームUD_EX_CH1の挿入、更新および削除操作を実行するプロセス・タスクを作成します。次の既存のタスクに類似したプロセス・タスクを作成できます。

    • 配布グループ挿入

    • 配布グループ更新

    • 配布グループ削除

    たとえば、挿入操作用のプロセス・タスクを作成するには、次のようにします。

    1. 「Process Management」を開きます。

    2. 「プロセス定義」をダブルクリックしてExchangeユーザー・プロセス定義を開きます。

    3. 次のようにして、プロセス定義にフィールドの更新用の新しいタスクを追加します。

      「追加」をクリックして、AcceptMessagesOnlyFrom Insertなどのタスク名およびタスクの説明を入力します。

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

      • Conditional

      • Allow Cancellation while Pending

      • Allow Multiple Instances

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

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

    5. 「統合」タブで「追加」「アダプタ」の順にクリックします。

    6. adpEXCHANGEADDCHILDTABLEVALUESアダプタを選択して、「保存」をクリックし、表示されるメッセージ内の「OK」をクリックします。

    7. 次の表にリストされているアダプタ変数をマッピングするには、アダプタを選択して「マップ」をクリックし、次の表の値に類似した値を指定します。

      変数名 データ型 マップ先 修飾子 リテラル値

      アダプタの戻り値

      Object

      レスポンス・コード

      該当なし

      該当なし

      childPrimaryKey

      Long

      プロセス・データ

      子の主キー

      Exchangeユーザー配布グループ・フォーム

      childTableName

      String

      リテラル

      String

      UD_EX_CH1

      objectType

      String

      リテラル

      String

      ユーザー

      itResourceFieldName

      String

      リテラル

      String

      UD_EXCHANGE_SERVER

      processInstanceKey

      Long

      プロセス・データ

      プロセス・インスタンス

      該当なし

    8. 「レスポンス」タブで「追加」をクリックして、次のレスポンス・コードを追加します。

      コード名 説明 ステータス

      CONFIGURATION_ERROR

      コネクタ構成が誤っている

      R

      CONNECTION_FAILED

      リソースに接続できない

      R

      CONNECTOR_EXCEPTION

      子表の挿入に失敗した

      R

      ERROR

      エラーが発生した

      R

      OBJECT_ALREADY_EXISTS

      同じIDのオブジェクトがすでに存在する

      R

      UNKNOWN

      不明な応答を受信した

      R

      UNKNOWN_UID

      オブジェクトが存在しない

      R

      VALIDATION_FAILED

      カスタム・データ検証に失敗した

      R

      SUCCESS

      操作が完了した

      C

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

  7. Oracle Identity Managerリリース11.1.2.x以降を使用している場合は、新しいUIフォームを作成してこれをアプリケーション・インスタンスに添付し、この新しい属性を表示します。手順は、「新規UIフォームの作成」および「新規フォームによる既存アプリケーション・インスタンスの更新」を参照してください。

次に示すのは、プロビジョニング用にセカンダリ・メール・アドレスを複数値フィールドとして追加する手順の例です。

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

  2. 次のようにして、新しいバージョンのプロセス・フォームを作成します。

    1. 「Development Tools」を開きます。

    2. 「Form Designer」をダブルクリックします。

    3. 次の値を入力して新しいフォームを作成します。

      表名: UD_EX_PROXY

      説明: Exchange proxy addresses

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

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

    1. 「Additional Columns」タブで、「Add」をクリックします。

    2. 新規追加された行に、フィールドの詳細を入力します。

      たとえば、ProxyAddressFormフィールドを追加する場合は、名前フィールドにUD_EX_PROXYと入力してから、このフィールドの詳細情報を次のように入力します。

      バリアント型: String

      長さ: 129

      フィールド・ラベル: Proxy Address

      フィールド・タイプ: textField

      順序: 1

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

    4. 新規作成したフォームをアクティブ化するには、バージョンのアクティブ化をクリックします。

  4. 次のように、UD_EX_PROXYフォームを子表としてUD_EXCHANGEフォームに割り当てます。

    1. 「Development Tools」を開きます。

    2. 「Form Designer」をダブルクリックします。

    3. UD_EXCHANGEプロセス・フォームを検索して開きます。

    4. 「Create New Version」をクリックします。

      新規バージョンの作成ダイアログ・ボックスで、「ラベル」フィールドに新しいバージョンを入力して「保存」アイコンをクリックします。

    5. 作成された新しいバージョンを現行バージョンのドロップダウン・リストで選択します。

    6. 「子表」タブの「割当て」をクリックして、UD_EX_PROXYフォームの、新しく作成した(アクティブな)バージョンを選択します。

    7. 「バージョンをアクティブにする」をクリックします。

    8. 「Save」アイコンをクリックします。

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

    1. 「administration」を展開します。

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

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

    4. 「Add」をクリックし、フィールドのコード・キー値とデコード値を入力します。

      コード・キーの形式はUD_EX_PROXY~Proxy Addressです。デコード値は、Exchangeコネクタ・ガイドの表C-3から取得します。

      コード・キー: UD_EX_PROXY~Proxy Address

      デコード: EmailAddresses

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

  6. 新規作成された子フォームUD_EX_PROXYの挿入、更新および削除のプロビジョニング操作を実行するためのプロセス・タスクを、次のとおりに作成します。

    ノート:

    この項で説明するステップは、次に示す挿入、更新および削除のプロビジョニング操作のために3回実行する必要があります。

    • タスクの追加: Proxy Address Insert

    • タスクの追加: Proxy Address Update

    • タスクの追加: Proxy Address Delete

    1. 「Process Management」を開きます。

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

    3. Exchangeユーザー・プロセス定義を検索して開きます。

    4. タスクのタブで、挿入プロビジョニング操作に対応する「Proxy Address Insert」タスクを追加するために「追加」をクリックします。

      「Creating New Task」ダイアログ・ボックスが開きます。

    5. 「General」タブをクリックし、次の値を入力します。

      タスク名: Proxy Address Insert

      説明: Add a new Exchange proxy address value

    6. 「Task Properties」セクションで、次のステップを実行します。

      • 次のオプションを選択します。

        Conditional

        Allow Cancellation while Pending

        Allow Multiple Instances

      • 子表のリストでUD_EX_PROXYを選択します。

      • 「Trigger Type」リストで「Insert」を選択します。

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

    8. 「Integration」タブの「Add」をクリックします。

    9. 表示された「Handler Selection」ダイアログ・ボックスの「Adapter」をクリックします。

      プロセス・タスクに割り当てることのできるアダプタのリストが「Handler Name」領域に表示されます。

    10. 「Proxy Address Insert」プロビジョニング操作を構成するためにadpEXCHANGEADDCHILDTABLEVALUESアダプタを選択します。

    11. 「Save」をクリックします。

    12. 表示されたメッセージの「OK」をクリックしてダイアログ・ボックスを閉じます。

    13. 次の表にリストされているアダプタ変数をマッピングするには、アダプタを選択して「マップ」をクリックし、次の表の値に類似した値を指定します。

      変数名 データ型 マップ先 修飾子 リテラル値

      アダプタの戻り値

      Object

      レスポンス・コード

      該当なし

      該当なし

      childPrimaryKey

      Long

      プロセス・データ

      子の主キー

      Exchange Proxy Address

      childTableName

      String

      リテラル

      String

      UD_EX_PROXY

      objectType

      String

      リテラル

      String

      ユーザー

      itResourceFieldName

      String

      リテラル

      String

      UD_EXCHANGE_SERVER

      processInstanceKey

      Long

      プロセス・データ

      プロセス・インスタンス

      該当なし

    14. 「レスポンス」タブで「追加」をクリックして、次のレスポンス・コードを追加します。

      ノート:

      次の表に示した値は、挿入、更新、削除のどのプロセス・タスクでも同じです。

      コード名 説明 ステータス

      CONFIGURATION_ERROR

      コネクタ構成が誤っている

      R

      CONNECTION_FAILED

      リソースに接続できない

      R

      CONNECTOR_EXCEPTION

      子表の挿入に失敗した

      R

      ERROR

      エラーが発生した

      R

      OBJECT_ALREADY_EXISTS

      同じIDのオブジェクトがすでに存在する

      R

      UNKNOWN

      不明な応答を受信した

      R

      UNKNOWN_UID

      オブジェクトが存在しない

      R

      VALIDATION_FAILED

      カスタム・データ検証に失敗した

      R

      SUCESS

      操作が完了した

      C

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

    16. 更新プロビジョニング操作に対応する「Proxy Address Update」タスクを追加するために、プロセス定義のステップ6.dから6.kまでを、次の相違点に注意して実行します。

      • ステップ6.dを実行するときに、「Creating New Task」ダイアログ・ボックスで次の値を入力します。

        タスク名: Proxy Address Update

        説明: Update an existing Exchange proxy address value

      • ステップ6.eを実行するときに、「Task Properties」セクションの「Trigger Type」リストで「Insert」ではなく「Update」を選択します。

      • ステップ6.hを実行するときに、「Handler Name」領域で、adpEXCHANGEADDCHILDTABLEVALUES adapterアダプタではなくadpEXCHANGEUPDATECHILDTABLEVALUESアダプタを選択します。

    17. 削除プロビジョニング操作に対応する「Proxy Address Delete」タスクを追加するために、プロセス定義のステップ6.dから6.kまでを、次の相違点に注意して実行します。

      • ステップ6.dの実行時に、「Creating New Task」ダイアログ・ボックスで、次の値を入力します。

        タスク名: Proxy Address Delete

        説明: Delete an Exchange proxy address value

      • ステップ6.eを実行するときに、「Task Properties」セクションの「Trigger Type」リストで「Insert」ではなく「Delete」を選択します。

      • ステップ6.hを実行するときに、「Handler Name」領域で、adpEXCHANGEADDCHILDTABLEVALUES adapterアダプタではなくadpEXCHANGEREMOVECHILDTABLEVALUESアダプタを選択します。

  7. 新しい「Proxy Address」フィールドがリクエスト・フォームに表示されるようにするために、「Exchange User」リソースのための新しいUIフォームを作成してアプリケーション・インスタンスに添付します。

    1. サンドボックスの作成およびアクティブ化の説明に従って、サンドボックスを作成し、これをアクティブ化します。

    2. 「新しいUIフォームの作成」の説明に従って、「Exchange User」リソース用の新しいUIフォームを作成します。

      新しいUIフォームを作成するときに、リソース・タイプ・フィールドでは「Exchange User」を選択し、フォーム名フィールドにはExchangeUser2と入力します。

    3. 既存のアプリケーション・インスタンスを開きます。

    4. 「フォーム」フィールドで、作成した新しいUIフォームを選択します。

    5. アプリケーション・インスタンスを保存します。

    6. サンドボックスの公開の説明に従って、サンドボックスを公開します。

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

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

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

  1. org.identityconnectors.exchange.extension.ExchangeValidatorなどの完全修飾ドメイン名(FQDN)を持つJavaクラスで必須の検証ロジックを実装するコードを記述します。

    この検証クラスには、検証メソッドを実装する必要があります。次のサンプル検証クラスは、「名」属性の値に番号記号(#)が含まれるかどうかを確認します。

    package com.validationexample;
    
    import java.util.HashMap;
     
    public class MyValidator {
        public boolean validate(HashMap hmUserDetails, HashMap hmEntitlementDetails, String sField) throws ConnectorException {
     
            /* 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 sFirstName = (String) hmUserDetails.get(sField);
            for (int i = 0; i < sFirstName.length(); i++) {
                if (sFirstName.charAt(i) == '#') {
                    valid = false;
                    break;
                }
            }
            return valid;
     
        }
    }
    
  2. Design Consoleにログインします。
  3. 次のいずれかの参照定義を検索して開きます(または新しい参照を作成します)。
    • リコンシリエーション用のデータの検証を構成するには:

      Lookup.Exchange.UM.ReconValidation

    • プロビジョニング用のデータの検証を構成するには:

      Lookup.Exchange.UM.ProvValidation

    ノート:

    これらの参照定義を見つけられなければ、新しい参照定義を作成します。

  4. コード・キー列で、検証するリソース・オブジェクト・フィールド名を入力します。たとえば、SimpleDisplayNameです。
  5. デコード列で、クラス名を入力します。たとえば、org.identityconnectors.exchange.extension.ExchangeValidatorなどになります。
  6. 参照定義に変更を保存します。
  7. Lookup.Exchange.UM.Configuration参照定義を検索して開きます。
  8. コード・キー列で、次のエントリのいずれかを入力します。
    • リコンシリエーション用のデータの検証を構成するには:

      Recon Validation Lookup

    • プロビジョニング用のデータの検証を構成するには:

      Provisioning Validation Lookup

  9. デコード列で、次のエントリのいずれかを入力します(またはステップ3で作成した参照の名前を入力します)。
    • リコンシリエーション用のデータの検証を構成するには:

      Lookup.Exchange.UM.ReconValidation

    • プロビジョニング用のデータの検証を構成するには:

      Lookup.Exchange.UM.ProvValidation

  10. 参照定義に変更を保存します。
  11. クラスを含むJARを作成し、UpdateJarsユーティリティを使用してOracle Identity Managerデータベースにアップロードします。
  12. PurgeCacheユーティリティを実行して、サーバー・キャッシュからのデータセットのリクエストに関連するコンテンツをクリアします。
  13. リコンシリエーションまたはプロビジョニングを実行して、SimpleDisplayNameなどのフィールドの検証を確認します。

4.6 ユーザー・リコンシリエーション中のデータ変換の構成

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

リコンシリエーション中にフェッチした単一値のユーザー・データの変換を構成するには:

  1. org.identityconnectors.exchange.extension.ExchangeTransfomationなどの完全修飾ドメイン名(FQDN)を持つJavaクラスで必須の変換ロジックを実装するコードを記述します。

    この変換クラスは、変換メソッドを実装する必要があります。次のサンプル変換クラスは、ターゲット・システムの「名」および「姓」属性からフェッチした値を使用して、「氏名」属性の値を作成します。

    package com.transformationexample;
    
    import java.util.HashMap;
     
     
    public class MyTransformer {
        public Object transform(HashMap hmUserDetails, HashMap hmEntitlementDetails, String sField) throws ConnectorException {
            /*
            * 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 sFirstName = (String) hmUserDetails.get("First Name");
            String sLastName = (String) hmUserDetails.get("Last Name");
            return sFirstName + "." + sLastName;
     
        }
    }
    
  2. Design Consoleにログインします。
  3. Lookup.Exchange.UM.ReconTransformation(または別のカスタム名を作成)参照定義を検索して開きます。

    ノート:

    Lookup.Exchange.UM.ReconTransformation参照定義を見つけられなければ、新しい参照定義を作成します。

  4. コード・キー列に、変換するリソース・オブジェクト・フィールド名を入力します。たとえば、SimpleDisplayNameです。
  5. デコード列で、クラス名を入力します。たとえば、org.identityconnectors.exchange.extension.ExchangeTransfomationなどになります。
  6. 参照定義に変更を保存します。
  7. Lookup.Exchange.UM.Configuration参照定義を検索して開きます。
  8. コード・キー列に、リコンシリエーション変換参照を入力します。
  9. デコード列で、Lookup.Exchange.UM.ReconTransformationを入力するか、またはステップ3で作成した参照の名前を入力します。
  10. 参照定義に変更を保存します。
  11. クラスを含むJARを作成し、UpdateJarsユーティリティを使用してOracle Identity Managerデータベースにアップロードします。
  12. PurgeCacheユーティリティを実行して、サーバー・キャッシュからのデータセットのリクエストに関連するコンテンツをクリアします。
  13. リコンシリエーションを実行して、SimpleDisplayNameなどのフィールドの変換を検証します。