ヘッダーをスキップ

Oracle Identity Manager Toolsリファレンス
リリース9.1.0.2

B56035-01
目次
目次
索引
索引

戻る 次へ

6 ルール・ジェネレータについて

この章では、ルール・ジェネレータについて説明します。内容は次のとおりです。

6.1 概要

フィールド検証を実行し、Oracle Identity ManagerにパッケージされたフォームまたはOracle Identity Managerユーザーが作成したフォームにデフォルト値を入力するには、特定のビジネス・ルールを適用する必要があります。たとえば、「Users」フォームで、ユーザーの姓と名を連結してOracle Identity ManagerでユーザーIDを自動的に生成する場合などがあります。

これには、フォームのフィールド値の変更を指定した特定のタイプのアダプタを作成する必要があります。これは「Adapter Factory」フォームを使用して実行できます。このアダプタをフォームにアタッチすると、フォームにあるすべてのレコードのフィールド値がOracle Identity Managerにより自動的に更新され、情報がOracle Identity Managerデータベースに保存されます。

自動的にフォームのフィールド値を生成、変更または検証するアダプタのタイプを、ルール・ジェネレータと呼びます。Oracle Identity Managerは、ルール・ジェネレータを挿入前および更新前にトリガーします。

アダプタ変数を含むルール・ジェネレータを作成する場合は、アダプタ変数を適切な場所にマップする必要があります。そうしない場合、アダプタは機能しません。

また、アダプタを動作させるために、このアダプタをプロビジョニング・プロセスにアタッチできます。プロセスをターゲット・ユーザーまたは組織へプロビジョニングすると、Oracle Identity Managerは関連付けたルール・ジェネレータをトリガーします。

プロビジョニング・プロセスに割り当てたルール・ジェネレータが、プロセスを完了するためには不要になる場合があります。このような場合は、ルール・ジェネレータをプロビジョニング・プロセスから削除できます。同様に、フォーム・フィールドにルール・ジェネレータをアタッチしてから、そのフォーム・フィールドに別のルール・ジェネレータを関連付けることができます。このような場合は、まず現在フォーム・フィールドにアタッチしているルール・ジェネレータを削除する必要があります。

この後の各項では、次の作業の方法を説明します。

6.2 ルール・ジェネレータのアダプタ変数のマッピング

第3章「アダプタの作成」では、ルール・ジェネレータの作成方法を説明しました。ここで、ルール・ジェネレータのアダプタ変数を正しい場所にマップする必要があります。これにより、アダプタが確実に動作します。

アダプタ変数をマップするには、Design Consoleの「Development Tools/Business Rule Definition」フォルダから「Data Object Manager」フォームにアクセスします。

ルール・ジェネレータのアダプタ変数を正しい場所にマップする手順は次のとおりです。

  1. 「Data Object Manager」フォームを開きます。Design Consoleワークショップに「Data Object Manager」フォームが表示されます。

    次の表で、「Data Object Manager」フォームの様々な領域を説明します。

    名前  説明 

    「Form Description」フィールド 

    この検索フィールドで、ルール・ジェネレータをアタッチするフィールドを含むフォームを選択します。 

    「Data Object」フィールド 

    このフィールドには、選択したフォームで表されるデータ・オブジェクトの名前が表示されます。 

    「Attach Handlers」タブ 

    このタブには次の項目が表示されます。

    • 選択したフォームにアタッチされたルール・ジェネレータ

    • このフォームに関連付けたルール・ジェネレータの実行スケジュール

    • ルール・ジェネレータがOracle Identity Managerで実行される順序

    • ユーザー・グループの挿入、更新および削除の権限

     

    「Map Adapters」タブ 

    このタブには次の項目が表示されます。

    • フォームに関連付けられたルール・ジェネレータの名前

    • アダプタのステータス

    • ルール・ジェネレータのアダプタ変数の名前、説明およびマッピング・ステータス

    注意: 「Map Adapters」タブは、アダプタが現在のデータ・オブジェクトに関連付けられるまで無効になっています。アダプタのデータ・オブジェクトへの関連付けの詳細は、『Oracle Identity Manager管理およびユーザー・コンソール・ガイド』を参照してください。 

  2. 「Form Description」フィールドをダブルクリックします。ルール・ジェネレータをアタッチできるフォームを示す「Lookup」ダイアログ・ボックスが表示されます。

  3. 使用するフォーム(Solarisなど)を選択します。次に、「OK」をクリックします。

  4. ツールバーで「Save」をクリックします。

    選択したフォーム、フォームのデータ・オブジェクトおよびフォームに関連付けられたルール・ジェネレータ・アダプタが表示されます。また、Oracle Identity Managerで「Map Adapters」タブが有効になります。

    この例では、Solarisフォームが選択されています。データ・オブジェクトと、それに関連付けられた4つのルール・ジェネレータ・アダプタ(adpCONVERTTOLOWERCASEadpSOLARISHMDSTRINGGENadpSETSOLARISASSETおよびadpSETPASSWORDFROMMAIN)が表示されます。Oracle Identity Managerは、これらの
    4つのルール・ジェネレータを挿入前にトリガーします。

    アダプタの順序番号に基づき、Oracle Identity Managerは、まずadpCONVERTTOLOWERCASEアダプタをトリガーし、それからadpSOLARISHMDSTRINGGENadpSETSOLARISASSETおよびadpSETPASSWORDFROMMAINアダプタの順にトリガーします。

    ヒント:

    ルール・ジェネレータのトリガー順を変更する手順は次のとおりです。

    1. 「Assign」をクリックします。「Event Handlers」ダイアログ・ボックスが表示されます。

    2. ルール・ジェネレータ・フォームを選択します。

    3. 「Up」および「Down」矢印ボタンをクリックし、ルール・ジェネレータの順序を変更します。

     

    これらのルール・ジェネレータを正常に動作させるには、アダプタ変数を正しい場所にマップする必要があります。

  5. 「Map Adapters」タブをクリックします。

  6. 「Name」コンボ・ボックスで、マッピング可能なアダプタ変数を含むルール・ジェネレータ(adpCONVERTTOLOWERCASEルール・ジェネレータなど)を選択します。

    「Map Adapters」タブには次の項目が表示されます。

  7. 「Map Adapters」タブの「Adapter Variable」領域に表示される各変数にマッピングを設定します。それには、マップする変数の行ヘッダー(Dataなど)をダブルクリックします。「Data Mapping for Variable」ダイアログ・ボックスが表示されます。

    次の表では、「Data Mapping for Variable」ダイアログ・ボックスについて説明します。

    フィールド名  説明 

    Variable Name 

    このフィールドには、マッピングを設定するアダプタ変数の名前(Dataなど)が表示されます。 

    Data Type 

    このフィールドには、アダプタ変数のデータ型が表示されます(たとえば、Dataアダプタ変数のデータ型は文字列です)。 

    Map To 

    このフィールドには、アダプタ変数(User Definitionなど)に設定可能なマッピングのソースおよびターゲットの場所が含まれます。

    アダプタ変数を場所または連絡先にマップする場合、Oracle Identity Managerでは隣接するコンボ・ボックスが有効になります。このコンボ・ボックスから、アダプタ変数をマップする場所または連絡先の特定のタイプを選択します。

    アダプタ変数を場所または連絡先にマップしない場合、このコンボ・ボックスは無効です。 

    Qualifier 

    このフィールドには、「Map To」コンボ・ボックスで選択したマッピングの修飾子が含まれます(「User Login」など)。 

    IT Asset Type 

    このフィールドでは、アダプタ変数をITリソースにマップし、この変数のデータ型が文字列である場合に、特定のITリソース(Solarisなど)を選択できます。

    アダプタ変数をITリソースにマップしない場合、またはアダプタ変数のデータ型が文字列ではない場合、このフィールドは表示されません。 

    IT Asset Property 

    このフィールドでは、アダプタ変数をITリソースにマップし、この変数のデータ型が文字列である場合に、マッピングの結果を受け取る特定のフィールド(「User Name」など)を選択できます。

    アダプタ変数をITリソースにマップしない場合、またはアダプタ変数のデータ型が文字列ではない場合、このフィールドは表示されません。

    重要: 「IT Asset Type」および「IT Asset Property」フィールドは、下位互換性のためにこのウィンドウに含まれています。アダプタ変数を「IT Resource」データ型で作成することをお薦めします。この場合、これらのフィールドは表示されません。 

    Literal Value 

    アダプタ変数をリテラルにマップする場合、このフィールドに特定のリテラル名(IBMなど)を入力します。

    アダプタ変数をリテラルにマップしない場合、このフィールドは表示されません。 

    「Map To」、「Qualifier」、「IT Asset Type」、「IT Asset Property」および「Literal Value」のすべてのフィールドに入力します。


    注意:

    選択するマッピングの詳細は、『Oracle Identity Managerリファレンス』のアダプタ・マッピング情報に関する項を参照してください。 


  8. 「Save」をクリックします。次に、「Close」をクリックします。

    「Data Mapping for Variable」ウィンドウが閉じます。「Map Adapters」タブが再びアクティブになります。

  9. メイン画面のツールバーで「Save」をクリックします。

マッピング可能なすべてのアダプタ変数について、手順78を繰り返します。

「Status」フィールドの内容が、「Mapping Incomplete」から「Ready」に変わります。アダプタ変数のマッピング・ステータスも、「No(N)」から「Yes(Y)」に変わります。

これは、ルール・ジェネレータのすべてのアダプタ変数が、正常にマップされたことを示します。これで、このルール・ジェネレータをプロビジョニング・プロセスにアタッチし、プロセスをターゲット・ユーザーまたは組織にプロビジョニングした際にルール・ジェネレータをトリガーできます。

ヒント:

フォームに関連付けられたルール・ジェネレータにすべてのアダプタ変数をマップすると、「Adapter Factory」フォームの「Usage Lookup」タブにアクセスすることで、アタッチしたフォームおよびルール・ジェネレータの実行スケジュールを簡単に確認できます。

ルール・ジェネレータがプロセスに割り当てられ、プロセスがプロビジョニングされると、Oracle Identity Managerによってルール・ジェネレータが実行されます。 

6.3 ルール・ジェネレータとプロセスの関連付け

ルール・ジェネレータのアダプタ変数を正しい場所にマップした後、ルール・ジェネレータをプロビジョニング・プロセスにアタッチする必要があります。プロセスをターゲット・ユーザーまたは組織へプロビジョニングすると、Oracle Identity Managerは関連付けたルール・ジェネレータをトリガーします。

同様に、プロビジョニング・プロセスに割り当てたルール・ジェネレータがプロセスを完了するために不要になった場合は、ルール・ジェネレータをプロビジョニング・プロセスから削除する必要があります。

ルール・ジェネレータをプロビジョニング・プロセスに割り当てる、またはルール・ジェネレータをプロビジョニング・プロセスから削除するには、「Process Definition」フォームの「Event Handlers/Adapters」タブにアクセスします。このフォームは「Process Management」フォルダ内にあります。

6.4 ルール・ジェネレータのフォーム・フィールドからの削除

フォーム・フィールドにルール・ジェネレータをアタッチしてから、そのフォーム・フィールドに別のルール・ジェネレータを関連付けることができる場合もあります。このような場合は、まず現在フォーム・フィールドにアタッチしているルール・ジェネレータを削除する必要があります。


注意:

フォームのデータ・オブジェクトのクラス名がプロビジョニング・プロセスの表名と一致する場合に、ルール・ジェネレータをフォームから削除すると、そのプロビジョニング・プロセスにルール・ジェネレータを割り当てることはできません。

たとえば、adpCONVERTTOLOWERCASEルール・ジェネレータをSolarisフォームから削除したとします。フォームに関連付けられたデータ・オブジェクトのクラス名がUD_SOLARISである場合、UD_SOLARISの表名を持つプロビジョニング・プロセスにルール・ジェネレータを割り当てることはできません。 


ルール・ジェネレータをフォーム・フィールドから削除するには、次の手順を実行します。

  1. 「Data Object Manager」フォームを開きます。

  2. 削除するルール・ジェネレータを含むフォームを選択します。

  3. 選択したフォームとそのルール・ジェネレータが、「Data Object Manager」フォームに表示されます。

  4. フォーム・フィールドから削除するルール・ジェネレータをクリックします。

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

選択したルール・ジェネレータが、「Data Object Manager」フォームに表示されなくなります。これは、ルール・ジェネレータがフォーム・フィールドから削除されたことを意味します。


注意:

ルール・ジェネレータをフォーム・フィールドから削除する時に、エラー・ボックスが表示される場合、アダプタはすでにプロビジョニング・プロセスに関連付けられています。まず、ルール・ジェネレータをプロセスから削除してください。その後、フォーム・フィールドから削除できます。 



戻る 次へ
Oracle
Copyright © 2009 Oracle Corporation.

All Rights Reserved.
目次
目次
索引
索引