7 Oracle Internet Directoryコネクタの機能の拡張

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

この章では、次の項目について説明します。

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

ユーザー、グループ、組織単位およびロールのターゲット・リソースのリコンシリエーション用に新しい複数値フィールドを追加できます。

7.1.1 ターゲット・アプリケーションからのユーザーのリコンシリエーション用の新しい複数値フィールドの追加

デフォルトでは、アイデンティティ・セルフ・サーバーのアプリケーション用の「スキーマ」ページに表示される複数値フィールドは、リコンシリエーションのためにOracle Identity Governanceとターゲット・システム間でマップされます。必要に応じて、ターゲット・リソースのリコンシリエーション用に新しい複数値フィールドを追加できます。

ターゲット・アプリケーション(またはターゲット・リソースのリコンシリエーション)からユーザーをリコンサイルするために新しい複数値フィールドを追加するには、次のようにします。
  1. Oracle Identity System Administrationにログインし、追加する複数値フィールドの値のリストを保持できる参照を作成します。
  2. 次のように子フォームを作成し、属性を追加します。
    1. Identity Self Serviceにログインします。
    2. ターゲット・システム用に作成したアプリケーションを編集のために検索して開きます。
    3. 「スキーマ」ページで、新しい子フォームとその属性を追加します。

      たとえば、次の値を入力します。

      • 表示名: Car License

      • ターゲット属性: carLicense

      • 「リコンシリエーション・フィールド」オプションを必ず選択します。

      ノート:

      • 子フォームに属性を「拡張設定」オプションから追加する場合、必ず新規追加した属性に「参照」とマークします。

      • 「値リスト」フィールドに、ステップ1で作成した参照の名前を入力します。

    4. 変更を適用します。
  3. Identity System Administrationにログインし、新しいフォームを作成してアプリケーションに関連付けます。

関連項目:

  • 複数値フィールドの参照を作成する方法の詳細は、『Oracle Fusion Middleware Oracle Identity Governanceの管理』参照タイプの作成に関する項を参照してください

  • 子フォームの作成および属性の追加の詳細は、『Oracle Fusion Middleware Oracle Identity Governanceでのセルフ・サービス・タスクの実行』子フォームの追加に関する項を参照してください

  • 新しいフォームを作成してアプリケーションに関連付ける方法の詳細は、「Oracle Identity Governanceの構成」を参照してください

7.1.2 グループ、組織単位およびロールのターゲット・リソースのリコンシリエーション用の新しい複数値フィールドの追加

デフォルトでは、各参照定義に含まれる複数値フィールドは、リコンシリエーションのためにOracle Identity Governanceとターゲット・システム間でマップされます。必要に応じて、グループ、組織単位およびロールのターゲット・リソースのリコンシリエーション用に新しい複数値フィールドを追加できます。

ノート:

  • この項ではオプションの手順を説明します。この手順は、ターゲット・リソースのリコンシリエーション用に複数値フィールドを追加する場合にのみ実行します。

  • この手順は、グループ、組織単位またはロールのフィールドを追加する場合に実行できます。

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

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

7.1.2.1 複数値フィールド用のフォームの作成
複数値フィールド用にフォームを作成するには、次のようにします。
  1. Oracle Identity Manager Design Consoleにログインします。
  2. 「Development Tools」を開き、「Form Designer」をダブルクリックします
  3. 表の名前および説明を指定してフォームを作成し、「Save」をクリックします。
  4. 「Add」をクリックしてフィールドの詳細を入力します。
  5. 「Save」をクリックし、「Make Version Active」をクリックしますたとえば:
7.1.2.2 プロセス・フォームの子フォームとしてのフォームの追加

複数値フィールド用に作成されたフォームをプロセス・フォームの子フォームとして追加します。

  1. 次のプロセス・フォームのうち1つを検索して開きます。
    • グループの場合: UD_LDAP_GRまたはUD_OID_GR
    • 組織単位の場合: UD_LDAP_OUまたはUD_OID_OU
    • ロールの場合: UD_LDAP_RL
  2. 「Create New Version」をクリックします
  3. 「Child Table(s)」タブをクリックします。
  4. 「割当て」をクリックします。
  5. 「Assign Child Tables」ダイアログ・ボックスで、新規作成した子フォームを選択して右矢印をクリックした後、「OK」をクリックします。
  6. 「Save」をクリックし、「Make Version Active」をクリックしますたとえば:
7.1.2.3 新しいフォームとアプリケーション・インスタンスの関連付け

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

そのためには、次のようにします。
  1. Oracle Identity System Administrationにログインします。
  2. サンドボックスを作成し、アクティブにします。
  3. 新たに追加したフィールドと残りのフィールドを表示するために新しいUIフォームを作成します。
  4. 新たに作成したUIフォームをターゲット・システムのアプリケーション・インスタンスに関連付けます。そのためには、リソースに対する既存のアプリケーション・インスタンスを開いて、フォームフィールドからフォーム(ステップ4.cで作成済)を選択し、アプリケーション・インスタンスを保存します。
  5. サンドボックスを公開します。

関連項目:

7.1.2.4 リソース・オブジェクト・リコンシリエーション・フィールドへの新しい複数値フィールドの追加

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

  1. 「Resource Management」を開き、「Resource Objects」をダブルクリックします
  2. 次のリソース・オブジェクトのうち1つを検索して開きます。
    • グループの場合: LDAP GroupまたはOID Group
    • 組織単位の場合: LDAP Organizational UnitまたはOID Organizational Unit
    • ロールの場合: LDAP Role
  3. 「Object Reconciliation」タブで、「Add field」をクリックします。
  4. 「Add Reconciliation Fields」ダイアログ・ボックスに、フィールドの詳細を入力します。

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

  5. 「Save」をクリックしてダイアログ・ボックスを閉じます。
  6. 新規作成したフィールドを右クリックして、「Define Property Fields」を選択します
  7. 「Add Reconciliation Fields」ダイアログ・ボックスに、新規作成したフィールドの詳細を入力します。

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

  8. 「保存」をクリックしてダイアログ・ボックスを閉じます。
  9. 「Create Reconciliation Profile」をクリックします。これにより、リソース・オブジェクトに行われた変更がMDSにコピーされます。
7.1.2.5 リコンシリエーション用の参照定義でのフィールドのエントリの作成

リコンシリエーション用の参照定義で、新規追加したフィールドのエントリを作成します。

そのためには、次のようにします。
  1. 「Administration」を開き、「Lookup Definition」をダブルクリックします
  2. 次のいずれかの参照定義を検索して開きます。
    • グループの場合: Lookup.LDAP.Group.ReconAttrMapまたはLookup.OID.Group.ReconAttrMap
    • 組織単位の場合: Lookup.LDAP.OU.ReconAttrMapまたはLookup.OID.OU.ReconAttrMap
    • ロールの場合: Lookup.LDAP.Role.ReconAttrMap

    ノート:

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

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

    コード・キー: MULTIVALUED_FIELD_NAME~CHILD_RESOURCE_OBJECT_FIELD_NAME

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

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

7.1.2.6 新しいフィールド用のリコンシリエーション・フィールド・マッピングの作成

新規追加したフィールド用にリコンシリエーション・フィールド・マッピングを作成します。

そのためには、次のようにします。
  1. 「Process Management」を開き、「Process Definition」をダブルクリックします
  2. 次のいずれかのプロセス定義を検索して開きます。
    • グループの場合: LDAP GroupまたはOID Group
    • 組織単位の場合: LDAP Organizational UnitまたはOID Organizational Unit
    • ロールの場合: LDAP Role
  3. 次のいずれかのプロセス定義の「Reconciliation Field Mappings」タブで、「Add Field Map」をクリックします。
    • グループの場合: LDAP GroupまたはOID Group
    • 組織単位の場合: LDAP Organizational UnitまたはOID Organizational Unit
    • ロールの場合: LDAP Role
  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」をクリックします

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

ユーザー、グループ、組織単位およびロールのプロビジョニング用に新しい複数値フィールドを追加できます。

7.2.1 ユーザー・プロビジョニング用の新しい複数値フィールドの追加

デフォルトでは、アイデンティティ・セルフ・サーバーのアプリケーション用の「スキーマ」ページに表示される複数値フィールドは、プロビジョニングのためにOracle Identity Governanceとターゲット・システム間でマップされます。必要に応じて、プロビジョニング用に新しい複数値フィールドを追加できます。

ユーザー・プロビジョニング用に新しい複数値フィールドを追加するには、次のようにします。
  1. Oracle Identity System Administrationにログインし、追加する複数値フィールドの値のリストを保持できる参照を作成します。
  2. 次のように子フォームを作成し、属性を追加します。
    1. Identity Self Serviceにログインします。
    2. ターゲット・システム用に作成したアプリケーションを編集のために検索して開きます。
    3. 「スキーマ」ページで、新しい子フォームとその属性を追加します。

      たとえば、次の値を入力します。

      • 表示名: Car License

      • ターゲット属性: carLicense

      • 「リコンシリエーション・フィールド」オプションを必ず選択します。

      ノート:

      • 子フォームに属性を「拡張設定」オプションから追加する場合、必ず新規追加した属性に「参照」とマークします。

      • 「値リスト」フィールドに、ステップ1で作成した参照の名前を入力します。

    4. 変更を適用します。
  3. Identity System Administrationにログインし、新しいフォームを作成してアプリケーションに関連付けます。

関連項目:

  • 複数値フィールドの参照を作成する方法の詳細は、『Oracle Fusion Middleware Oracle Identity Governanceの管理』参照タイプの作成に関する項を参照してください

  • 子フォームの作成および属性の追加の詳細は、『Oracle Fusion Middleware Oracle Identity Governanceでのセルフ・サービス・タスクの実行』子フォームの追加に関する項を参照してください

  • 新しいフォームを作成してアプリケーションに関連付ける方法の詳細は、「Oracle Identity Governanceの構成」を参照してください

7.2.2 グループ、組織単位およびロールのプロビジョニング用の新しい複数値フィールドの追加

デフォルトでは、各参照定義に含まれる複数値フィールドは、プロビジョニングのためにOracle Identity Governanceとターゲット・システム間でマップされます。必要に応じて、グループ、組織単位およびロールのプロビジョニング用に新しい複数値フィールドを追加できます。

ノート:

この項ではオプションの手順を説明します。この手順は、グループ、組織単位またはロールのプロビジョニング用に複数値フィールドを追加する場合にのみ実行します。

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

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

ノート:

7.2.2.1 プロビジョニング用の参照定義でのフィールドのエントリの作成

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

  1. Oracle Identity Manager Design Consoleにログインします。
  2. 「管理」を開き、「参照定義」をダブルクリックします。
  3. ターゲット・システムに応じて次のいずれかの参照定義を検索して開きます。
    • グループ・フィールドの場合は、Lookup.LDAP.Group.ProvAttrMapまたはLookup.OID.Group.ProvAttrMapを開きます

    • 組織単位フィールドの場合は、Lookup.LDAP.OU.ProvAttrMapまたはLookup.OID.OU.ProvAttrMapを開きます

    • ロール・フィールドの場合は、Lookup.LDAP.Role.ProvAttrMapを開きます

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

    コード・キー: CHILD_FORM_NAME~CHILD_FIELD_LABEL

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

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

    ノート:

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

    たとえば、「Code Key」フィールドにはUD_CARLICEN~Car License「Decode」・フィールドにはcarLicenseと入力します。

7.2.2.2 プロセス定義での複数値属性のプロビジョニングのためのタスクの追加

プロセス定義の複数値属性をプロビジョニングするためのタスクを追加するには、次の手順を実行します。

7.2.2.2.1 プロセス定義の更新

次のようにして、プロセス定義にプロビジョニングの複数値属性用のタスクを追加します。

  1. プロセス管理開きます。
  2. 「プロセス定義」をダブルクリックします。
  3. 次のいずれかのプロセス定義を検索して開きます。
    • グループの場合: LDAP GroupまたはOID Group
    • 組織単位の場合: LDAP Organizational UnitまたはOID Organizational Unit
    • ロールの場合: LDAP Role
  4. 「Add」をクリックしてタスクの名前および説明を入力します。たとえば、タスクの名前および説明としてCar License Addedと入力します。
  5. 「Task Properties」セクションで、次のフィールドを選択します。
    • 条件付き

    • Allow Cancellation while Pending

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

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

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

      たとえば:

  6. 「保存」をクリックします。
7.2.2.2.2 アダプタの選択

次のようにしてアダプタを選択します。

  1. 次のプロビジョニング・プロセスのいずれかの統合タブで、「追加」をクリックして「アダプタ」を選択します。
    • グループの場合: LDAP GroupまたはOID Group
    • 組織単位の場合: LDAP Organizational UnitまたはOID Organizational Unit

    アダプタのリストからadpLDAPADDCHILDTABLEVALUEまたはadpOIDADDCHILDTABLEVALUEを選択します。

  2. 「Save」をクリックしてダイアログ・ボックスを閉じます。
7.2.2.2.3 アダプタ変数マッピングの作成
次のようにアダプタ変数マッピングを作成します。
  1. 「Adapter Variable」リージョンでprocInstanceKey変数をクリックします。
  2. 表示されるダイアログ・ボックスで次のマッピングを作成します。
    • 変数名: procInstanceKey

    • マップ先: Process Data

    • 修飾子: Process Instance

    たとえば:

  3. 「Save」をクリックして、ダイアログ・ボックスを閉じます。
  4. 次のいずれかのステップを実行します。

    グループの場合:

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

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

    procInstanceKey

    プロセス・データ

    プロセス・インスタンス

    該当なし

    アダプタの戻り変数

    レスポンス・コード

    該当なし

    該当なし

    itResourceName

    リテラル

    文字列

    UD_LDAP_USR_SERVER、UD_OID_USR_SERVERまたはUD_EDIR_USR_SERVER

    childTableName

    リテラル

    文字列

    UD_CHILD_PROCESS_FORM_NAME

    objectType

    リテラル

    文字列

    Group

    childPrimarykey

    プロセス・データ(子表

    の説明)

    子の主キー

    該当なし

    組織単位の場合:

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

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

    procInstanceKey

    プロセス・データ

    プロセス・インスタンス

    該当なし

    アダプタの戻り変数

    レスポンス・コード

    該当なし

    該当なし

    itResourceName

    リテラル

    文字列

    UD_LDAP_USR_SERVER、UD_OID_USR_SERVERまたはUD_EDIR_USR_SERVER

    childTableName

    リテラル

    文字列

    UD_CHILD_PROCESS_FORM_NAME

    objectType

    リテラル

    文字列

    OU

    childPrimarykey

    プロセス・データ(子表

    の説明)

    子の主キー

    該当なし

  5. 「レスポンス」タブで「追加」をクリックして、少なくともSUCCESSレスポンス・コードをステータスCとともに追加します。これにより、カスタム・タスクが正常に実行されると、タスクのステータスが「完了」として表示されます。
  6. 「Save」アイコンをクリックしてダイアログ・ボックスを閉じ、プロセス定義を保存します。
7.2.2.2.4 プロセス・タスクの更新

プロセス・タスクを次のように更新します。

  1. 「プロセス定義の更新」から「アダプタ変数マッピングの作成」に記載されている手順を実行して「Car License Update」プロセス・タスクを追加します。ただし、次の箇所が異なります。
    • 「Updating the Process Definition」のステップ5を実行するときに、子表リストからUD_CARLICENを選択するかわりに、UD_CARLICNを選択します。同じく、「Trigger Type」リストから「nsert」を選択するかわりに「Update」を選択します。

    • 「アダプタ変数マッピングの作成」のステップ4を実行するときに、childPrimarykey変数は表示されません。かわりに、他の変数に追加して、次の変数をその個々の値とともにマップします。

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

      taskInstanceKey

      タスク情報

      タスク・インスタンス・キー

      該当なし

  2. 「プロセス定義の更新」から「アダプタ変数マッピングの作成」に記載されている手順を実行して「Car License Delete」プロセス・タスクを追加します。ただし、次の箇所が異なります。
    • 「Updating the Process Definition」のステップ5を実行するときに、子表リストからUD_CARLICENを選択するかわりに、UD_CARLICNを選択します。同じく、「Trigger Type」リストから「Insert」を選択するかわりに「Delete」を選択します。

    • 「アダプタ変数マッピングの作成」のステップ4を実行するときに、childPrimarykey変数は表示されません。かわりに、他の変数に追加して、次の変数をその個々の値とともにマップします。

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

      taskInstanceKey

      タスク情報

      タスク・インスタンス・キー

      該当なし

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

    ノート:

    プロビジョニング操作時に、複数値フィールドの値を追加または削除できます。これらの値は更新できません。

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

リクエスト・データセットを更新します。

ノート:

リクエストベースのプロビジョニングを有効にした場合のみ、この項および「PurgeCacheユーティリティの実行およびMDSへのリクエスト・データセット定義のインポート」のステップを実行します。

プロセス・フォームで属性を追加した場合は、リクエスト・データセット定義を含む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ファイルを保存して閉じます。
7.2.2.4 PurgeCacheユーティリティの実行およびMDSへのリクエスト・データセット定義のインポート

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

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

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

7.3 データの変換および検証の構成

アプリケーションの作成時にGroovyスクリプト・ロジックを作成して、ユーザー・アカウント・データの変換および検証を構成します。

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

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

ユーザー・アカウント・データの変換または検証を構成するには、アプリケーションの作成時にGroovyスクリプトを作成する必要があります。Groovyスクリプトベースの検証および変換ロジックの作成の詳細は、『Oracle Fusion Middleware Oracle Identity Governanceでのセルフ・サービス・タスクの実行』プロビジョニング属性とリコンシリエーション属性の検証と変換に関する項を参照してください。

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

デフォルトでは、使用しているターゲット・システムに応じて、ユーザー、グループ、組織単位またはロール・オブジェクト・クラスがコネクタでサポートされます。コネクタ操作用のユーザー定義オブジェクト・クラスまたはカスタム・オブジェクト・クラスについてコネクタを構成できます。

ノート:

この項ではオプションの手順を説明します。この手順は、ユーザー定義オブジェクト・クラスのためにコネクタを構成する場合にのみ実行します。

ユーザー定義オブジェクト・クラスのコネクタを構成するには:

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

    オブジェクト・クラスの作成の詳細は、ターゲット・システムのドキュメントを参照してください。

    ノート:

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

  2. スキーマをリフレッシュします。
  3. 『Oracle Fusion Middleware Oracle Identity Governanceでのセルフ・サービス・タスクの実行』ターゲット・アプリケーションのスキーマ情報の指定に関する項または認可アプリケーションのスキーマ情報の指定に関する項に記載されている手順を実行して、プロビジョニング用のオブジェクト・クラスの必須属性およびオプション属性を追加します。
  4. 「拡張設定」セクションで、次のようにします。
    • objectClassesToSynchronizeパラメータとaccountObjectClassesパラメータの値を更新して、新しいオブジェクト・クラス名を含めます。

    • readSchemaパラメータの値をtrueに設定します。

7.5 複数の信頼できるソースのリコンシリエーション用のコネクタの構成

ベース・アプリケーションの構成をクローン先のアプリケーションにすべてコピーしてアプリケーションをクローニングするか、またはベース・アプリケーションと構成を共有するインスタンス・アプリケーションを作成することで、ターゲット・システムの複数のインストールに対してこのコネクタを構成することができます。

これらの構成の詳細は、『Oracle Fusion Middleware Oracle Identity Governanceでのセルフ・サービス・タスクの実行』アプリケーションのクローニングに関する項およびインスタンス・アプリケーションの作成に関する項を参照してください。

ノート:

この手順は、複数の信頼できるソースのリコンシリエーションのためにコネクタを構成する場合にのみ実行します。

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

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

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

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

7.6 POSIXグループおよびアカウントをサポートするコネクタの構成

POSIXグループ(posixGroups)とPOSIXアカウント(posixAccounts)がサポートされるようにコネクタを構成できます。

ノート:

この手順は、ターゲット・システムに対してのみ実行できます。

この構成を完了すると次のようになります。

  • コネクタがPOSIXグループをサポートします。

  • 同期リコンシリエーション操作が、POSIXグループ・メンバーシップの変更を戻さなくなります。これらの変更を取得するために、完全検索リコンシリエーション・タスクを使用する必要があります。

コネクタがPOSIXグループおよびアカウントをサポートするように構成するには:

  1. Identity Self Serviceにログインします。

  2. コネクタ用に作成したアプリケーションを編集のために検索して開きます。

  3. アプリケーションの「拡張設定」セクションで、次のようにします。

    1. maintainPosixGroupMembershipパラメータの値をtrueに設定します。

    2. accountObjectClassesパラメータを更新して"posixGroup","posixAccount"を含めます。

    3. objectClassesToSynchronizeパラメータを更新して"posixGroup","posixAccount"を含めます。

    4. readSchemaパラメータの値をtrueに設定します。

  4. 「スキーマ」ページの「ユーザー・グループ」セクションで、表を次のように更新します。

    1. 「ターゲット属性」列で、ldapGroups値をposixGroupsで置換します。

    2. 表を更新して次の値を含めます。

      表示名 ターゲット属性 データ型 必須プロビジョニング・プロパティ? リコンシリエーション・フィールド? キー・フィールド? 大/小文字を区別しない?

      GID NUMBER

      gidNumber

      文字列

      はい

      はい

      いいえ

      いいえ

      UID NUMBER

      uidNumber

      文字列

      はい

      はい

      いいえ

      いいえ

      HOME DIRECTORY

      homedirectory

      文字列

      はい

      はい

      いいえ

      いいえ

    3. 変更を保存します。

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

  6. Lookup.LDAP.Group.ProvAttrMapおよびLookup.LDAP.Group.ReconAttrMap参照定義で、次のマッピングを文字列として追加します。

    GID NUMBER to gidNumber

    OIDでは、Lookup.OID.Group.ProvAttrMapおよびLookup.OID.Group.ReconAttrMap参照定義を更新します。

  7. LDAP GroupOID GroupまたはeDirectory Groupリソース・オブジェクトに、GID NUMBERフィールドを次のように追加します。

    グループ(LDAP GroupOID Group)、「オブジェクト・リコンシリエーション」「フィールドの追加」を選択した後、GID NUMBERを追加します。

  8. LDAP GroupOID Group、プロセス・フォームで、GID NUMBERフィールドを追加します。

  9. LDAP GroupOID Group、プロセス定義で、GID Numberのマッピングを文字列として追加します。

  10. 終了したら、「Create Reconciliation Profile」をクリックします。

7.7 OpenLDAPでのユーザー・アカウントの有効化または無効化機能の使用

OpenLDAPでユーザー・アカウントの有効化または無効化機能を使用するには、OpenLDAPで次のステップを実行します。

  1. /etc/openldap/slapd.confで次のエントリを確認します。
    include         /etc/openldap/schema/ppolicy.schema
    modulepath /usr/lib64/openldap
    moduleload ppolicy.la
    overlay ppolicy
    ppolicy_default "cn=default,ou=Password 
    Policies,dc=example,dc=com"
    ppolicy_use_lockout
    
  2. OpenLDAPを再起動します。

    /etc/rc.d/init.d/ldap restart

  3. 次の内容を含む、/tmp/policy.ldifという名前の新しいファイルを作成し、必要に応じて変更します。
    # add default policy to DIT
    # attributes preceded with # indicate the defaults and
    # can be omitted
    # passwords must be reset every 30 days,
    # have a minimum length of 6 and users will
    # get a expiry warning starting 1 hour before
    # expiry, when the consecutive fail attempts exceed 5
    # the count will be locked and can only be reset by an
    # administrator, users do not need to supply the old
    # password when changing
    dn: cn=default,ou=Password Policies,dc=example,dc=com
    objectclass: top
    objectclass: person
    objectClass: pwdPolicy
    cn: default
    pwdMaxAge: 2592000
    #pwdExpireWarning: 3600
    #pwdInHistory: 0
    #pwdCheckQuality: 0
    pwdMaxFailure: 5
    pwdLockout: TRUE
    #pwdLockoutDuration: 0
    #pwdGraceAuthNLimit: 0
    #pwdFailureCountInterval: 0
    pwdMustChange: TRUE
    pwdMinLength: 6
    #pwdAllowUserChange: TRUE
    pwdSafeModify: FALSE
    pwdAttribute: userPassword
    sn: default
    
  4. このポリシーをOpenLDAPにインポートします。たとえば:
    ldapmodify -D cn=admin,dc=example,dc=com -W -a -f /tmp/policy.ldif
    
  5. 次の拡張設定の構成値を設定します。
    enabledAttribute=pwdAccountLockedTime
    enabledValue=dummy
    disabledValue=000001010000Z
    enabledWhenNoAttribute=true
    allowOtherValuesForEnabledAttribute=true
    enabledWhenOtherValue=false
    

    ノート:

    ユーザー・アカウントの有効化または無効化は、サーバー固有の場合があります。別のLDAPv3準拠ディレクトリ・サーバーを使用している場合は、そのサーバーでのこの機能の実装方法を確認してください。

    コネクタの動作は、ステップ5に示す拡張設定パラメータ(enabledAttribute、enabledValue、disabledValue、enabledWhenNoAttribute、allowOtherValuesForEnabledAttribute、enabledWhenOtherValueなど)を使用して構成できます。