ヘッダーをスキップ

Oracle Identity Management 統合ガイド
10g(10.1.4.2)

E05894-01
目次
目次
索引
索引

戻る 次へ

10 Oracle Human Resourcesとの同期化

企業内の従業員データ用のプライマリ・リポジトリとしてOracle Human Resourcesを使用している場合は、Oracle Human ResourcesとOracle Internet Directoryを同期化する必要があります。同期化には、Oracle Human Resourcesコネクタを使用します。

この章では、Oracle Human Resourcesコネクタを紹介し、その配置方法を説明します。内容は次のとおりです。

Oracle Human Resourcesとの同期化の概要

Oracle Human Resourcesコネクタによって、従業員データのサブセットを、Oracle Human ResourcesからOracle Internet Directoryにインポートできます。このコネクタには、あらかじめパッケージされた統合プロファイルと、Oracle Internet Directoryとの通信を処理するOracle Human Resourcesエージェントの両方が含まれます。パッケージ済の統合プロファイルは、Oracle Directory Integration Server管理ツールまたはDirectory Integrationアシスタント(dipassistant)を使用して、配置要件に応じてカスタマイズできます。

Oracle Human Resourcesコネクタは、Oracle Human Resourcesシステムから増分変更を抽出するように構成することによって、いつでも実行できるようにスケジュールできます。また、Oracle Human Resourcesの列名とOracle Internet Directoryの属性の間のマッピングを設定および変更できます。

Oracle Human Resourcesからインポートできるデータ

表10-1は、Oracle Human Resourcesスキーマの表を示しています。選択した場合は、これらの属性のほとんどをOracle Internet Directoryにインポートできます。

表10-1    Oracle Human Resourcesスキーマの表 
表名  コネクタ構成情報フィールドで使用される別名 

PER_PEOPLE_F 

PER 

PER_ADDRESSES 

PA 

PER_PERIODS_OF_SERVICE 

PPS 

PER_PERSON_TYPES 

PPT 

Oracle Human Resourcesデータベースにappsアカウントでログインした場合は、これらの表はすべて参照できます。

属性は実行時に構成ファイルから追加または削除できるので、Oracle Human Resourcesコネクタは、必要な属性のみを選択して取得するSQL文を動的に作成します。

表10-2は、Oracle Human Resourcesのユーザー・インタフェースのフィールドの一部を示しています。これらのフィールドは、従業員データを追加または変更するときに表示されます。

表10-2    Oracle Human Resourcesのユーザー・インタフェースのフィールド 
属性名  説明  フォーム/キャンバス/フィールド名 

LAST_NAME 

個人の姓 

個人情報/氏名/姓 

FIRST_NAME 

個人の名 

個人情報/氏名/名 

TITLE 

個人の役職 

個人情報/氏名/タイトル 

SUFFIX 

サフィックス(Jr、Sr、Ph.Dなど) 

個人情報/氏名/サフィックス 

MIDDLE_NAME 

ミドルネーム 

個人情報/氏名/ミドルネーム 

SEX 

性別 

性別リスト・ボックス 

START_DATE 

入社日 

個人情報/入社日 

DATE_OF_BIRTH 

生年月日 

個人情報/個人情報/生年月日 

MARITAL_STATUS 

婚姻区分 

個人情報/個人情報/ステータス 

NATIONAL_INDENTIFIER 

米国居住者用社会保障番号 

個人情報/ID/社会保障 

EMPLOYEE_NUMBER 

従業員番号 

個人情報/ID/従業員 

REGISTERD_DISABLED_FLAG 

障害の有無のインジケータ 

個人情報/個人情報/障害の有無 

EMAIL_ADDRESS 

電子メール・アドレス 

個人情報/個人情報/Eメール 

OFFICE_NUMBER 

オフィス所在地 

個人情報/オフィス所在地情報/オフィス 

MAILSTOP 

郵便物配達先 

個人情報/オフィス所在地情報/郵便宛先 

INTERNAL_LOCATION 

事務所 

個人情報/オフィス所在地情報/事業所 

ADDRESS_LINE1 

住所1 

個人住所情報/住所1 

ADDRESS_LINE2 

住所2 

個人住所情報/住所2 

ADDRESS_LINE3 

住所3 

個人住所情報/住所3 

TOWN_OR_CITY 

市区町村 

個人住所情報/市区 

REGION_1 

地域1 

個人住所情報/郡 

REGION_2 

地域2 

個人住所情報/都道府県 

POSTAL_CODE 

郵便番号 

個人住所情報/郵便番号 

COUNTRY 

国 

個人住所情報/国 

TELEPHONE_NUMBER_1 

電話番号1 

個人住所情報/電話番号 

TELEPHONE_NUMBER_2 

電話番号2 

個人住所情報/電話番号2 

Oracle Human ResourcesとOracle Internet Directory間の同期の管理

この項の内容は次のとおりです。

タスク1: Oracle Human Resourcesコネクタのディレクトリ統合プロファイルの構成

Oracle Human Resourcesコネクタとともにインストールされるパッケージ済の統合プロファイルを構成するには、Oracle Directory Integration Server管理ツールまたはDirectory Integrationアシスタントを使用します。Oracle Directory Integration Server管理ツールの詳細は、第7章「ディレクトリ同期の管理」を参照してください。Directory Integrationアシスタントの詳細は、『Oracle Identity Managementユーザー・リファレンス』のOracle Directory Integration Platformツールの章のdipassistantに関する項を参照してください。

パッケージ済統合プロファイルの一部のパラメータでは、Human Resourcesコネクタとの統合に固有の値を指定する必要があります。Human Resourcesコネクタに固有のパラメータは、表10-3を参照してください。

表10-3    Oracle Human Resourcesコネクタ統合プロファイルに固有の属性 
属性  説明 

プロファイル名(orclODIPAgentName) 

システム内でコネクタを識別するための一意名。統合プロファイルを識別する識別名の相対識別名コンポーネントとして使用されます。この名前には英数字のみを使用できます。この属性は必須で、変更不可です。デフォルトの名前はOracleHRAgentです。 

同期モード(ModeorclODIPSynchronizationMode) 

Oracle Internet Directoryと接続ディレクトリ間での同期の方向。

  • IMPORTは接続ディレクトリからOracle Internet Directoryへの変更のインポートを示します。

  • EXPORTはOracle Internet Directoryから接続ディレクトリへの変更のエクスポートを示します。

デフォルトはIMPORTです。

この属性は必須で、変更可能です。

注意: Oracle Internet Directory 10g(10.1.4.2)では、Oracle Human Resourcesのインポート操作のみがサポートされます。 

実行情報 

 

エージェントの実行コマンド
orclODIPAgentExeCommand) 

Directory Integration Serverがコネクタの実行に使用する、コネクタ実行可能ファイルの名前と引数のリスト。

この属性は必須で、変更可能です。

デフォルトは次の値です。

odihragent OracleHRAgent  connect=hrdb \
login=%orclodipConDirAccessAccount \
pass=%orclodipConDirAccessPassword \
date=%orclODIPLastSuccessfulExecutionTime \

引数connect=hrdbの値は、Oracle Human Resourcesシステム・データベースの接続文字列に設定する必要があります。 

接続されたディレクトリ・アカウント(orclodipConDirAccessAccount) 

コネクタが同期で使用する、接続ディレクトリ内の有効なユーザー・アカウント。Human Resources Agentの場合のユーザー・アカウントは、Oracle Human Resourcesデータベース内の有効なユーザー識別子です。

関連項目: コマンドラインで引数を渡す一般的な使用方法は、第10章「Oracle Human Resourcesとの同期化」を参照してください。 

追加構成情報(orclODIPAgentConfigInfo) 

コネクタがOracle Internet Directoryに格納する構成情報。この構成情報は、コネクタの起動時に、Directory Integration Serverによってコネクタに渡されます。この情報は属性として格納され、Directory Integration Serverはその内容を認識しません。

この属性に格納される値は、Oracle Human Resourcesからの同期が必要な(Oracle Human Resourcesコネクタについて)すべての属性を表します。

関連項目: 「タスク2: Oracle Internet Directoryと同期化される属性のリストの構成」

Oracle Human Resourcesコネクタの場合、この属性は必須です。構成ファイルを編集してからプロファイルに再度アップロードすることによって変更できます。この属性は、Oracle Directory Integration Server管理ツールでは修正できません。 

接続されたディレクトリURL(orclOdipConDirURL) 

接続ディレクトリのホストとポートの詳細情報です。host:port:sidの書式で入力する必要があります。 

インタフェース・タイプ
orclODIPInterfaceType) 

データ転送に使用するインタフェース。このインタフェースはタグ付きファイルの形式であるため、TAGGEDに設定されます。

注意: Oracle Human Resourcesプロファイルの場合、この属性は変更しないでください。 

マッピング情報 

 

マッピング・ルール
orclODIPAttributeMappingRules) 

マッピング・ルールを格納するための属性。Directory Integrationアシスタント(dipassistant)を使用してファイルにマッピング・ルールを格納します。

Oracle Human Resourcesの場合、この属性は必須で、変更可能です。

関連項目:

 

接続されたディレクトリ一致フィルタ
orclODIPConDirMatchingFilter) 

Oracle Human Resources接続には使用されません。 

OID一致フィルタ

orclODIPOIDMatchingFilter) 

この属性は、Oracle Internet Directoryでのターゲット・エントリの検索に使用されるLDAPフィルタを指定します。Oracle Directory Integration Serverはこのフィルタを使用して、同期に必要なLDAP操作の種類を検出します。

employeenumber=%の形式で指定します。

この属性はオプションで、変更可能です。 

ステータス情報 

 

OID前回適用された変更番号(orcllastappliedChangenumber) 

この属性は、すべてのエキスポート・プロファイルの基準で、Oracle Human Resourcesの同期には適用されません。 

前回適用された変更番号(orclODIPConDirLastAppliedChgNum) 

この属性は、すべてのプロファイルの基準で、Oracle Human Resourcesの同期には適用されません。 

タスク2: Oracle Internet Directoryと同期化される属性のリストの構成

デフォルトのOracle Human Resourcesプロファイルは、Oracle Human ResourcesからOracle Internet Directoryに同期化される属性のデフォルト・リストを提供します。このリストはカスタマイズ可能で、属性を追加または削除できます。

デフォルトの属性リストは、統合プロファイルの一部としてorclodipAgentConfigInfo属性に格納されます。構成情報も、$ORACLE_HOME/ldap/odi/confディレクトリにあるoraclehragent.cfg.masterファイルに用意されています。


注意

oraclehragent.cfg.masterファイルはバックアップとして機能するため、変更できません。 


表10-4に、Oracle Human Resourcesの属性のデフォルトのリストの列を示します。

表10-4    デフォルトでOracle Internet Directoryと同期化するOracle Human Resourcesの属性 
  説明 

ATTRNAME 

出力データ・ファイルに生成される出力タグ。 

COLUMN_NAME 

この値の取得元になるデータベース列名。 

TABLE_NAME 

この値の取得元になるデータベース表名。 

FORMAT 

この属性の列データ型(ASCII、NUMBER、DATE)。 

MAP 

この属性をOracle Human Resourcesから抽出するかどうかのインジケータ。値Yは抽出されることを示し、値Nは抽出されないことを示します。 

oraclehragent.cfg.masterファイルの内容は、次のとおりです。

ATTRNAME:COLUMN_NAME:TABLE_NAME:FORMAT:MAP
PersonId:person_id:PER:NUMBER:Y
PersonType:person_type_id:PER:NUMBER:Y
PersonTypeName:system_person_type:PPT:ASCII:Y
LastName:last_name:PER:ASCII:Y
StartDate:start_date:PER:DATE:Y
BirthDate:date_of_birth:PER:DATE:Y
EMail:email_address:PER:ASCII:Y
EmployeeNumber:employee_number:PER:NUMBER:Y
FirstName:first_name:PER:ASCII:Y
FullName:full_name:PER:ASCII:Y
knownas:known_as:PER:ASCII:Y
MaritalStatus:marital_status:PER:ASCII:Y
middleName:middle_names:PER:ASCII:Y
country:country:PA:ASCII:Y
socialsecurity:national_identifier:PER:ASCII:Y
Sex:sex:PER:ASCII:Y
Title:title:PER:ASCII:Y
suffix:suffix:PER:ASCII:Y
street1:address_line1:PA:ASCII:Y
zip:postal_code:PA:ASCII:Y
Address1:address_line1:PA:ASCII:Y
Address2:address_line2:PA:ASCII:Y
Address3:address_line3:PA:ASCII:Y
TelephoneNumber1:telephone_number_1:PA:ASCII:Y
TelephoneNumber2:telephone_number_2:PA:ASCII:Y
TelephoneNumber3:telephone_number_3:PA:ASCII:Y
town_or_city:town_or_city:PA:ASCII:Y
state:region_2:PA:ASCII:Y
Start_date:effective_start_date:PER:DATE:Y
End_date:effective_end_date:PER:DATE:Y
per_updateTime:last_update_date:PER:DATE:Y
pa_updateTime:last_update_date:PA:DATE:Y

同期化されるOracle Human Resourcesの追加属性の変更

同期化されるOracle Human Resourcesの属性を追加する手順は、次のとおりです。

  1. oraclehragent.cfg.masterファイルをコピーし、Agent_Name.cfg以外の名前を付けます。これは、Oracle Directory Integration Serverがこの名前の構成ファイルを生成し、実行時に構成情報をOracle Human Resourcesエージェントに渡すのに使用するためです。

  2. このファイルにレコードを追加することにより、Oracle Human Resourcesの同期化される属性を追加します。これには、次の情報が必要です。

    • 属性値の抽出元になるデータベース内の表名。これらの表は、表10-1にリストされています。このファイルでは、同期に使用される4つの表に、省略された名前が使用されます。

    • 表の列名。

    • 列のデータ型。有効な値は、ASCIINUMBERおよびDATEです。

    また、列名に属性名を割り当てる必要もあります。これは、出力ファイル内でこの属性を識別するための出力タグとして動作します。このタグは、マッピング・ルール内でOracle Human Resourcesの属性とOracle Internet Directoryの属性の間のルールを確立するために使用されます。

    map列(レコード内の最後の列)が値Yに設定されていることを確認する必要もあります。


    注意

    属性リストに新規属性を追加する場合は、orclodipAttributeMappingRules属性内に対応するルールを定義する必要があります。定義しない場合、Oracle Human Resourcesの属性は、Oracle Human Resourcesコネクタに抽出されてもOracle Internet Directoryと同期化されません。  


Oracle Human Resourcesの同期化される属性の除外

現在Oracle Internet Directoryと同期化されているOracle Human Resourcesの属性を除外する手順は、次のとおりです。

  1. oraclehragent.cfg.masterファイルをコピーし、Agent_Name.cfg以外の名前を付けます。これは、Directory Integration Serverがこの名前の構成ファイルを生成し、実行時に構成情報をOracle Human Resourcesコネクタに渡すのに使用するためです。

  2. 次のいずれか1つを行います。

    • 属性リスト内の対応するレコードの前に番号記号(#)を付けてコメント化する。

    • mapの値をNに設定する。

構成ファイルでのSQL SELECT文の構成による複雑な選択基準のサポート

前述のサポートされている属性の構成が、Oracle Human Resourcesデータベースからデータを抽出するには不十分な場合、Oracle Human Resourcesエージェントは、構成ファイル内にある事前構成済のSQL SELECT文を実行することもできます。構成ファイルには、このサポートを示すタグ(構成ファイル内の[SELECT])があります。

次の例は、Oracle Human Resourcesデータベースから情報の一部を取得するサンプルのSELECT文を示しています。SQL文を配置できるのは、[SELECT]タグの下のみです。BINDVARバインド変数は、増分変更を取得するために必要です。代入値によって、この変数の値(タイムスタンプ)がOracle Human Resourcesコネクタに渡されます。

SELECT文で取得される列の式にはすべて列名を指定する必要があります。たとえば、REPLACE(ppx.email_address),'@ORACLE.COM','')は、EMAILADDRESSとして取得されます。Oracle Human Resourcesコネクタは、REPLACE(ppx.email_address),'@ORACLE.COM'''式の結果の属性値とともに、EMAILADDRESSを属性名として出力ファイルに書き出します。

次に構成ファイル内のSELECT文の例を示します。

[SELECT]

SELECT
     REPLACE(ppx.email_address,'@ORACLE.COM','') EMAILADDRESS ,
     UPPER(ppx.attribute26) GUID,
     UPPER(ppx.last_name) LASTNAME,
     UPPER(ppx.first_name) FIRSTNAME,
     UPPER(ppx.middle_names) MIDDLENAME,
     UPPER(ppx.known_as) NICKNAME,
     UPPER(SUBSTR(ppx.date_of_birth,1,6)) BIRTHDAY,
     UPPER(ppx.employee_number) EMPLOYEEID,
     UPPER(ppos.date_start)  HIREDATE
FROM
   hr_organization_units hou,
   per_people_x ppx,
   per_people_x mppx,
   per_periods_of_service ppos
  WHERE
      pax.supervisor_id  = mppx.person_id(+)
  AND pax.organization_id = hou.organization_id(+)
  AND ppx.person_id = ppos.person_id
  AND ppx.person_id = pax.person_id
  AND ppos.actual_termination_date IS NULL
  AND UPPER(ppx.current_employee_flag) = 'Y'
  AND ppx.last_update_date >= (:BINDVAR,'YYYYMMDDHH24MISS')

タスク3: Oracle Human Resourcesコネクタに関するマッピング・ルールの設定

属性マッピング・ルールは、Oracle Directory Integration ServerがOracle Human ResourcesとOracle Internet Directoryの間で属性を変換する方法を制御します。Oracle Directory Integration Serverが使用するマッピング・ルールはカスタマイズできます。

Oracle Human Resourcesエージェント・プロファイルには、デフォルトのマッピング・ファイルがあります。一連のマッピング・ルールはこのマッピング・ファイルのorclodipAttributeMappingRules属性に格納されています。この情報は、oraclehragent.map.masterというファイルにも格納されています。このファイルは、$ORACLE_HOME/ldap/odi/confディレクトリの下にあります。


注意

oraclehragent.map.masterファイルは変更しないでください。バックアップとして機能しているためです。 


関連項目

oraclehragent.map.masterファイルの内容およびマッピング・ルール・レコードの形式の説明は、「マッピング・ルールとその形式」を参照してください。 

タスク4: Oracle Human ResourcesからOracle Internet Directoryへの同期の準備

この項では、Oracle Human ResourcesからOracle Internet Directoryへの同期の設定方法を説明します。

同期の準備

Oracle Human ResourcesとOracle Internet Directory間の同期を準備するには、次の手順に従います。

  1. Oracle Human ResourcesコネクタとDirectory Integration Serverが、Oracle Human Resourcesコネクタの実行元であるホストにインストールされていることを確認します。

  2. Oracle Human Resourcesシステムにアクセスするための情報を持っていることを確認します。これには次の情報があります。

    • Oracle Human Resourcesシステムのデータベースへの接続文字列

    • アクセス・アカウント

    • パスワード

  3. 「タスク1: Oracle Human Resourcesコネクタのディレクトリ統合プロファイルの構成」の説明に従って、Oracle Human Resourcesコネクタの統合プロファイルを構成します。統合プロファイルのすべての値が適切に設定されていることを確認します。これには次の値があります。

    • Oracle Human Resourcesの属性リスト

    • Oracle Human Resourcesの属性マッピング・ルール

    • スケジューリング間隔

  4. すべてを適切に設定した後、「プロファイルのステータス」(orclodipagentcontrol)属性をENABLEに設定します。この設定によって、Oracle Human Resourcesコネクタを実行する準備が完了していることを示します。

  5. それぞれのホストでOracleディレクトリ・サーバーとOracle Human Resourcesが実行されていない場合、これらを起動します。

  6. 準備が完了した後、まだこのホストでDirectory Integration Serverが実行されていない場合は、これを起動します。

    関連項目

    Directory Integration Serverを起動および停止する方法は、「Oracle Directory Integration Platformの起動、停止および再起動」を参照してください。 

同期プロセス

Oracle Human Resourcesシステム、Oracle Internet DirectoryおよびOracle Directory Integration Serverが実行され、Oracle Human Resourcesコネクタが使用可能になると、Oracle Directory Integration ServerはOracle Human ResourcesシステムからOracle Internet Directoryへの変更の同期を自動的に開始します。そのプロセスは、次のとおりです。

  1. 「最終実行時間」(orclodipLastExecutionTime)と「スケジューリングの間隔」(orclodipschedulinginterval)に指定されている値に従って、Oracle Directory Integration Serverは、Oracle Human Resourcesコネクタを起動します。

  2. Human Resourcesエージェントは次のものを抽出します。

    • 統合プロファイル内のorclodipLastSuccessfulExecutionTime属性に指定されている時間に基づいたOracle Human Resourcesシステムからのすべての変更

    • プロファイル内のorclodipAgentConfigInfo属性に指定されている属性のみ

    変更は、Oracle Human Resourcesのインポート・ファイルである$ORACLE_HOME/ldap/odi/import/HR_Agent_Name.datに書き込まれます。

  3. エージェントは、実行を完了した後、次のようなデータ・ファイルを作成します。

    FirstName: John
    LastName: Liu
    EmployeeNumber: 12345
    Title: Mr.
    Sex: M
    MaritalStatus: Married
    TelephoneNumber: 123-456-7891
    Mail: Jliu@my_company.com
    Address: 100 Jones Parkway
    City: MyTown
    
    
  4. Oracle Directory Integration Serverは、次の動作により変更をOracle Internet Directoryへインポートします。

    • インポート・ファイルからの各変更レコードの読取り

    • 統合プロファイルの「マッピング・ルール」(orclodipAttributeMappingRules)に指定されているルールに基づいた、各変更レコードのLDAP変更エントリへの変換

  5. すべての変更内容がOracle Internet Directoryに正常にインポートされると、Oracle Human Resourcesコネクタは、インポート・ファイルをアーカイブ・ディレクトリ($ORACLE_HOME/ldap/odi/import/archive)に移動します。ステータスの属性である「最終実行時間」(orclodipLastExecutionTime)と「最終正常実行時間」(orclodipLastSuccessfulExecutionTime)を現在の時間に更新します。

    インポート操作が失敗した場合は、「最終実行時間」(orclodipLastExecutionTime)属性のみが更新され、コネクタは「最終正常実行時間」(orclodipLastSuccessfulExecutionTime)属性に基づいてHuman Resourcesシステムからの変更の抽出を試行します。失敗の理由は、$ORACLE_HOME/ldap/odi/HR_Agent_Name.trcのトレース・ファイルに記録されます。

Oracle Human ResourcesからのOracle Internet Directoryのブートストラップ

Oracle Human ResourcesからOracle Internet Directoryをブートストラップする方法は2つあります。


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

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