![]() | |
Sun Java™ System Identity Manager 7.1 リソースリファレンス |
PeopleSoft コンポーネントインタフェースPeopleSoft コンポーネントインタフェースアダプタは、com.waveset.adapter.PeopleSoftCompIntfcAdapter クラスで定義されます。
このリソースアダプタは、コンポーネントインタフェースを介して PeopleSoft のデータを管理します。また、サポートされているバージョンの PeopleTools とともにその他の PeopleSoft アプリケーション (HR、Financials など) がシステムにインストールされている場合は、それらのアプリケーションも管理できます。
PeopleSoft コンポーネントインタフェースアダプタは、PeopleTools 8.1 〜 8.4.8 をサポートします。
リソースを設定する際の注意事項
PeopleSoft コンポーネントインタフェースアダプタは、デフォルトで USER_PROFILE コンポーネントインタフェースと DELETE_USER_PROFILE コンポーネントインタフェースをサポートするように設定されています。このアダプタでは、コンポーネントインタフェースが次のメソッドをサポートする場合に、カスタムコンポーネントインタフェースを使用してアカウントデータの作成、読み取り、更新も行えます。
アカウントを削除するには、カスタムコンポーネントインタフェースが次のメソッドをサポートしている必要があります。
さらに、「リソースパラメータ」ページで指定されたユーザーが、呼び出されたコンポーネントインタフェースのメソッドを実行するためのアクセス権を持っている必要があります。
Identity Manager 上で設定する際の注意事項
PeopleSoft コンポーネントインタフェースアダプタは、カスタムアダプタです。インストールプロセスを完了するには、次の手順を実行してください。
使用上の注意
PeopleSoft コンポーネントインタフェースアダプタは、PeopleSoft コンポーネントインタフェースのメソッドを呼び出し、プロパティーを設定することによって、ユーザープロビジョニングを実行します。コンポーネントインタフェースの定義は、PeopleSoft コンポーネントインタフェース設定オブジェクトに割り当てられます。このオブジェクトは、デバッグページまたは Identity Manager IDE を使用して変更できます。$WSHOME/sample/PeopleSoftComponentInterfaces.xml ファイルのコピーを編集し、そのファイルを Identity Manager に読み込むこともできます。
このアダプタを使用したコンポーネントインタフェースの設定と実装の詳細については、次の各節を参照してください。
コンポーネントインタフェースマップの定義
コンポーネントインタフェースマップには、アダプタで使用できるコンポーネントインタフェースのリストが含まれています。
使用可能なコンポーネントインタフェースは、それぞれ独自の定義を持っています。コンポーネントインタフェースの定義の主要な要素は次のとおりです。
- name - コンポーネントインタフェースのラベル。多くの場合、componentInterface 属性の値と一致しますが、これは必要条件ではありません。この値は、アダプタの「リソースパラメータ」ページのドロップダウンメニューに表示されます。
- componentInterface 属性 - PeopleSoft で定義されたコンポーネントインタフェースの名前。
- getKey 属性 - PeopleSoft の GET 操作を実行するときに設定されるコンポーネントインタフェースプロパティーの名前。getKey が定義されていない場合は、key 属性が代わりに使用されます。
- findKey 属性 - PeopleSoft の FIND 操作を実行するときに設定されるコンポーネントインタフェースプロパティーの名前。findKey が定義されていない場合は、key 属性が代わりに使用されます。
- createKey 属性 - PeopleSoft の CREATE 操作を実行するときに設定されるコンポーネントインタフェースプロパティーの名前。createKey が定義されていない場合は、key 属性が代わりに使用されます。
- key 属性 - 非推奨。代わりに、getKey、findKey、または createKey を使用します。
- properties 属性 - PeopleSoft コンポーネントインタフェースから読み取りまたは設定を行うことができるプロパティーのリスト。
properties リスト内の各オブジェクトには、次の属性が必要です。
これがコレクションプロパティーである場合は、追加属性を定義してください。コレクションプロパティーは、そのキープロパティーと、独自の入れ子構造を持つ単純プロパティーまたは複合プロパティー、あるいはその両方のセットを定義します。
- isCollection 属性 - プロパティーがコレクションである場合は、この属性を true に設定します。
- key 属性 - プロパティーがコレクションである場合は、この属性を、コレクションの各項目を一意に識別するプロパティーの名前に設定します。
- properties 属性 - コレクションの各項目について読み取りまたは設定を実行できるプロパティーのリスト。任意の複雑さをサポートするために、このリストの各メンバーは、親と同じ許可された属性を持つオブジェクトになっています。つまり、リストには、メンバーごとに固有の name、isCollection、key、および properties 属性を含めることができます。
デフォルトでサポートされるコンポーネントインタフェース
デフォルトのコンポーネントインタフェース設定オブジェクトは、次のインタフェースを定義します。
USER_PROFILE コンポーネントインタフェース
デフォルトの USER_PROFILE コンポーネントインタフェース定義は、create アクション、read アクション、および update アクションを実行するために使用されます。USER_PROFILE コンポーネントインタフェースが GETKEYS キーと FINDKEYS キーに対して UserID フィールドを割り当てるため、key 属性と findKey 属性は UserID に設定されます。
USER_PROFILE コンポーネントインタフェースのデフォルトの定義によって、使用可能なすべてのプロパティーが定義されているわけではありません。サンプルユーザーフォーム中で使用されているものを含むように簡素化されています。「アカウント属性」ページにほかのリソースユーザー属性を追加する必要がある場合は、最初にコンポーネントインタフェース定義を更新してください。コンポーネントインタフェース定義のリストに記載されていないリソースユーザー属性は、そのページに追加できません。
USER_PROFILE に定義されているほとんどのプロパティーは、単純なオブジェクトです。ただし、IDTypes オブジェクトと Roles オブジェクトはコレクションであり、複数の値を持つ可能性があります。IDTypes には、固有の属性のコレクションが含まれています。これらのオブジェクトには、isCollection 属性、コレクションのキー名、および少なくとも 1 つのプロパティーを含めてください。
DELETE_USER_PROFILE コンポーネントインタフェース
DELETE_USER_PROFILE コンポーネントインタフェース定義は、ユーザープロファイル定義を削除するために使用されます。OPRID キーは、削除するユーザープロファイルを決定します。このコンポーネントインタフェースにはプロパティーがないため、定義には何も表示されません。
ROLE_MAINT コンポーネントインタフェース
ROLE_MAINT コンポーネントインタフェース定義は、ロールリソースオブジェクトを一覧表示するように Identity Manager を設定する方法を示したサンプル実装の一部です。次に示す一般的なガイドラインに従って、ROLE_MAINT の例を実際の要件に合わせて変更することにより、ほかのリソースオブジェクトを一覧表示できます。
ROLE_MAINT コンポーネントインタフェース定義には、次の重要な特性があります。
USER_PROFILE コンポーネントインタフェースへの FIND メソッドのサポートの追加
デフォルトの USER_PROFILE コンポーネントインタフェースは、FIND メソッドをサポートしません。ただし、PeopleSoft コンポーネントインタフェースアダプタでアカウントの反復とリストをサポートするには、FIND メソッドが必要になります。
既存の USER_PROFILE コンポーネントに FIND メソッドのサポートを追加するには、次の手順を使用します。
- USER_PROFILE コンポーネントインタフェースを PeopleSoft Application Designer にロードします。
- USERMAINT コンポーネントを表示している左側のウィンドウで、PSOPRDEFN_SRCH オブジェクトの下にある「OPRID」フィールドを選択します。
このフィールドを、USER_PROFILE CI を表示している右側のウィンドウにドラッグします。
フィールドをドロップすると、USER_PROFILE CI に新しいキー「FINDKEYS」が作成されます。そのキーの下に、サブキー「OPRID」があります。
- FINDKEYS の下の OPRID 名を右クリックし、「Edit Name」を選択します。名前を UserID に変更します。
- USER_PROFILE CI を右クリックし、「Component Interface Properties」を選択します。「Standard Methods」タブを選択し、「Find」チェックボックスを選択します。「OK」をクリックして「Component Interface Properties」ダイアログを閉じます。
- USER_PROFILE コンポーネントインタフェースに対する変更を保存します。
コンポーネントインタフェースの「METHODS」フィールドに、Find メソッドが表示されます。新しい FIND メソッドの機能を確認するため、コンポーネントインタフェースを右クリックし、「Test Component Interface」を選択します。
注
PeopleSoft 管理者は、Create、Get、Save、および SetPassword の各メソッドに加え、コンポーネントインタフェースの Find メソッドに対してもフルアクセスを与えなければなりません。
PeopleSoft コンポーネントインタフェースのリソースオブジェクト
PeopleSoft コンポーネントインタフェースリソースの XML を編集することにより、リソースオブジェクトを管理できます。ObjectType 要素を追加するには、デバッグページまたは Identity Manager IDE を使用します。
たとえば、Role リソースオブジェクトのサポートを追加するには、このような ObjectType 要素を追加します。
<ObjectTypes>
<ObjectType name='Role' icon='role'>
<ObjectFeatures>
<ObjectFeature name='find'/>
</ObjectFeatures>
<ObjectAttributes idAttr='ROLENAME' displayNameAttr='ROLENAME' descriptionAttr='DESCR'>
<ObjectAttribute name='ROLENAME' type='string'/>
<ObjectAttribute name='DESCR' type='string'/>
<ObjectAttribute name='ROLESTATUS' type='string'/>
</ObjectAttributes>
</ObjectType>
</ObjectTypes>ObjectType name (たとえば、Role) は、ただ 1 つのコンポーネントインタフェース定義の supportedObjectTypes リストに含まれるいずれかのオブジェクトの名前と一致する必要があります。各 ObjectFeature (たとえば、find) は、その同じ supportedObjectTypes の features リストでの対応する機能を持っている必要があります。一致するコンポーネントインタフェースは、そのリソース機能を実行するために使用されるコンポーネントインタフェースになります。複数に一致する場合は、最初に一致したものが使用されます。
次の例は、コンポーネントインタフェースマップに含まれる ROLE_MAINT コンポーネントインタフェースのコンポーネントインタフェース定義の一部です。オブジェクト名 Role が見つかり、機能リスト内の項目の 1 つは find という名前です。
<Attribute name='supportedObjectTypes' >
<List>
<Object name='Role'>
<Attribute name='features' >
<List>
<Object name='find' />
<Object name='get' />
</List>
</Attribute>
</Object>
</List>
</Attribute>ユーザーフォーム
次のユーザーフォームフラグメントを使用して、PeopleSoft ロールのリストを検出できます。ROLENAME 属性と DESCR 属性が取得されます。
<invoke name='getResourceObjects' class='com.waveset.ui.FormUtil'>
<ref>:display.session</ref>
<s>Role</s>
<s>PeopleSoft Component Interface</s>
<map>
<s>searchAttrsToGet</s>
<list>
<s>ROLENAME</s>
<s>DESCR</s>
</list>
</map>
</invoke>セキュリティーに関する注意事項
ここでは、サポートされる接続と特権の要件について説明します。
サポートされる接続
Identity Manager は、Client Connection Toolkit (読み取り/書き込み) を使用してこのアダプタと通信します。
必要な管理特権
PeopleSoft に接続するユーザーを、管理対象のコンポーネントインタフェースのメソッドにアクセスできる PeopleSoft ロールに割り当ててください。
プロビジョニングに関する注意事項
次の表に、このアダプタのプロビジョニング機能の概要を示します。
機能
サポート状況
アカウントの作成
使用可
アカウントの更新
使用可
アカウントの削除
使用可
アカウントの有効化/無効化
コンポーネントインタフェースマップに有効化/無効化のロジックが定義されている場合は、使用可
パスワードの更新
使用可
アカウントの名前の変更
使用不可
パススルー認証
使用不可
前アクションと後アクション
使用不可
データ読み込みメソッド
アカウント属性
PeopleSoft コンポーネントインタフェースリソースのアカウント属性は、管理されるコンポーネントインタフェースによって異なります。
スキーママップの各エントリは、コンポーネントインタフェースマップ内のコンポーネントインタフェースに対して定義された「properties」リスト中のいずれかのエントリに一致するリソースユーザー属性名を持っているはずです。スキーママップの編集時に「設定のテスト」ボタンをクリックすると、該当する一致を確認できます。
リソースユーザー属性名がコンポーネントインタフェースマップ内のコレクションプロパティーと一致する場合、アカウント属性の値はそのコレクションの XML 文字列表現になります。コレクションプロパティーの操作例については、サンプルユーザーフォームフィールド accounts[PeopleSoft Component Interface].ps_roles を参照してください。
注
新しいリソースインスタンスに対して定義されるデフォルトのスキーママップエントリは、デフォルトの USER_PROFILE および DELETE_USER_PROFILE コンポーネントインタフェースマップと使用する場合のみに対応します。これらのマップを変更したり、独自のマップを作成したりする場合は、それに応じてスキーママップを変更してください。
すべてのアカウント属性のタイプは String です。
リソースオブジェクトの管理
なし
アイデンティティーテンプレート
$accountId$
サンプルフォーム
次のフォームは、$WSHOME/sample/forms ディレクトリにあります。
このユーザーフォームは、USER_PROFILE コンポーネントインタフェースが管理され、デフォルトアカウント属性が使用されている場合にのみ、期待どおりに機能します。このフォームは、スキーママップに email アカウント属性が追加されていることを前提としています。
EmailAddress 属性は、古い PeopleTools リリースでのみ使用できます。USER_PROFILE が EmailAddress 属性をサポートしているかどうかは、PropleTools の管理者に確認してください。
別のコンポーネントインタフェースを管理している場合や、別のスキーママップを使用している場合は、それに応じてユーザーフォームも変更する必要があります。
トラブルシューティング
デバッグページを使用して、次のクラスにトレースオプションを設定します。
com.waveset.adapter.PeopleSoftCompIntfcAdapter