ヘッダーをスキップ

Oracle Identity Manager Toolsリファレンス・ガイド
リリース9.0.3

E05090-01
目次
目次
索引
索引

戻る 次へ

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

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

概要

フィールド検証を実行し、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は関連付けたルール・ジェネレータをトリガーします。

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

次の項では、次の内容を説明します。

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

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

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

次の手順では、アダプタ変数をルール・ジェネレータにマップする方法を説明します。

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

  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フォームが選択されています。データ・オブジェクト(Thor.CarrierBase.tcUD_SOLARIS)と、それに関連付けられた4つのルール・ジェネレータ・アダプタ(adpCONVERTTOLOWERCASE、adpSOLARISHMDSTRINGGEN、adpSETSOLARISASSETおよびadpSETPASSWORDFROMMAIN)が表示されます。Oracle Identity Managerは、これらの4つのルール・ジェネレータを挿入前にトリガーします。

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

    ヒント

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

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

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

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

     

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

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

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

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

    「Map Adapters」タブの「Adapter Variable」領域に表示される各変数にマッピングを設定します。実行する手順は次のとおりです。

  7. マップする変数の行ヘッダー(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」のフィールドをすべて入力します。


    注意

    選択するマッピングの詳細は、「アダプタ変数のマッピング情報」を参照してください。 


  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によってルール・ジェネレータが実行されます。 

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

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

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

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

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

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

この手順では、ルール・ジェネレータをフォーム・フィールドから削除する方法を説明します。


注意

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

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


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

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

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

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

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

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

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

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


注意

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



戻る 次へ
Oracle
Copyright © 1991, 2007 Oracle Corporation.

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