Sun Identity Manager 8.1 リソースリファレンス

アダプタの詳細

リソースを設定する際の注意事項

PeopleSoft コンポーネントインタフェースアダプタは、デフォルトで USER_PROFILE コンポーネントインタフェースと DELETE_USER_PROFILE コンポーネントインタフェースをサポートするように設定されています。このアダプタでは、コンポーネントインタフェースが次のメソッドをサポートする場合に、カスタムコンポーネントインタフェースを使用してアカウントデータの作成、読み取り、更新も行えます。

アカウントを削除するには、カスタムコンポーネントインタフェースが次のメソッドをサポートしている必要があります。

さらに、「リソースパラメータ」ページで指定されたユーザーが、呼び出されたコンポーネントインタフェースのメソッドを実行するためのアクセス権を持っている必要があります。

Identity Manager のインストールに関する注意事項

PeopleSoft コンポーネントインタフェースアダプタは、カスタムアダプタです。インストールプロセスを完了するには、次の手順を実行する必要があります。

ProcedurePeopleSoft コンポーネントアダプタをインストールする

  1. 次のファイルを PeopleSoft のインストールメディアから $WSHOME/WEBINF/lib ディレクトリにコピーします。


    psjoa.jar

    注 –

    psjoa.jar のバージョンはインストールされている PeopleSoft システムのバージョンと一致する必要があります。


  2. このリソースを Identity Manager のリソースリストに追加するには、「管理するリソースの設定」ページの「カスタムリソース」セクションに次の値を追加する必要があります。


    com.waveset.adapter.PeopleSoftCompIntfcAdapter

使用上の注意

PeopleSoft コンポーネントインタフェースアダプタは、PeopleSoft コンポーネントインタフェースでメソッドの呼び出しとプロパティーの設定を行うことで、ユーザーのプロビジョニングを実行します。コンポーネントインタフェースの定義は、PeopleSoft コンポーネントインタフェース設定オブジェクトに割り当てられます。このオブジェクトは、デバッグページまたは [IDMIDE テキストエンティティーを定義してください] を使用して変更できます。$WSHOME/sample/PeopleSoftComponentInterfaces.xml ファイルのコピーを編集して、編集したファイルを Identity Manager に読み込むこともできます。

このアダプタを使用したコンポーネントインタフェースの設定と実装の詳細については、次の各節を参照してください。

コンポーネントインタフェースマップの定義

コンポーネントインタフェースマップには、アダプタで使用できるコンポーネントインタフェースのリストが含まれています。

使用可能なコンポーネントインタフェースは、それぞれ独自の定義を持っています。コンポーネントインタフェースの定義の主要な要素は次のとおりです。

デフォルトでサポートされるコンポーネントインタフェース

デフォルトのコンポーネントインタフェース設定オブジェクトは、次のインタフェースを定義します。

USER_PROFILE コンポーネントインタフェース

デフォルトの USER_PROFLE コンポーネントインタフェース定義は、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 の例を実際の要件に合わせて変更することにより、ほかのリソースオブジェクトを一覧表示できます。


注 –

PeopleSoft コンポーネントインタフェースアダプタは、リソースオブジェクトの一覧表示のみをサポートします。ほかのオブジェクト機能 (更新、作成、削除など) はサポートしません。


ROLE_MAINT コンポーネントインタフェース定義には、次の重要な特性があります。

USER_PROFILE コンポーネントインタフェースへの FIND メソッドのサポートの追加

デフォルトの USER_PROFILE コンポーネントインタフェースは、FIND メソッドをサポートしません。ただし、PeopleSoft コンポーネントインタフェースアダプタでアカウントの反復とリストをサポートするには、FIND メソッドが必要になります。

既存の USER_PROFILE コンポーネントに FIND メソッドのサポートを追加するには、次の手順を使用します。

ProcedureFIND メソッドのサポートを追加する

  1. USER_PROFILE コンポーネントインタフェースを PeopleSoft Application Designer にロードします。

  2. USERMAINT コンポーネントを表示している左側のウィンドウで、PSOPRDEFN_SRCH オブジェクトの下にある「OPRID」フィールドを選択します。

    このフィールドを、USER_PROFILE CI を表示している右側のウィンドウにドラッグします。

    フィールドをドロップすると、USER_PROFILE CI に新しいキー「FINDKEYS」が作成されます。そのキーの下に、サブキー「OPRID」があります。

  3. FINDKEYS の下の OPRID 名を右クリックし、「Edit Name」を選択します。名前を UserID に変更します。

  4. USER_PROFILE CI を右クリックし、「Component Interface Properties」を選択します。「Standard Methods」タブを選択し、「Find」チェックボックスを選択します。「OK」をクリックして「Component Interface Properties」ダイアログを閉じます。

  5. USER_PROFILE コンポーネントインタフェースに対する変更を保存します。

    コンポーネントインタフェースの「METHODS」フィールドに、Find メソッドが表示されます。新しい FIND メソッドの機能を確認するため、コンポーネントインタフェースを右クリックし、「Test Component Interface」を選択します。


    注 –

    PeopleSoft 管理者は、Create、Get、Save、および SetPassword の各メソッドに加え、コンポーネントインタフェースの Find メソッドに対してもフルアクセスを与えなければなりません。


PeopleSoft コンポーネントインタフェースのリソースオブジェクト

PeopleSoft コンポーネントインタフェースリソースの XML を編集することにより、リソースオブジェクトを管理できます。ObjectType 要素を追加するには、デバッグページまたは [IDMIDE テキストエンティティーを定義してください] を使用します。

たとえば、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) は、その同じ supportedObjectTypesfeatures リストでの対応する機能を持っている必要があります。一致するコンポーネントインタフェースは、そのリソース機能を実行するために使用されるコンポーネントインタフェースになります。複数に一致する場合は、最初に一致したものが使用されます。

次の例は、コンポーネントインタフェースマップに含まれる 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 です。

Identity Manager ユーザー属性  

リソースユーザー属性  

説明  

description

UserDescription

ユーザーの説明。 

symbolicId

SymbolicID

必須。ユーザーの記号 ID。 

idTypes

IDTypes

ユーザーに割り当てられたユーザータイプのリスト。 

ps_roles

ロール 

ユーザーに割り当てられたルールのリスト。 

email

EmailAddress

ユーザーの電子メールアドレス。この属性は、古い PeopleTools リリースでのみ使用できます。この属性は、デフォルトではスキーママップ内に存在しません。 

EmailAddresses

EmailAddresses

ユーザーの電子メールアドレスのリスト。この属性は、PeopleTools の 8.4x リリースでのみ使用できます。この属性は、デフォルトではスキーママップ内に存在しません。 

リソースオブジェクトの管理

なし

アイデンティティーテンプレート

$accountId$

サンプルフォーム

次のフォームは、$WSHOME/sample/forms ディレクトリにあります。

トラブルシューティング

デバッグページを使用して、次のクラスでトレースオプションを設定します。

com.waveset.adapter.PeopleSoftCompIntfcAdapter