![]() | |
Sun Java™ System Identity Manager 7.0 リソースリファレンス |
フラットファイル Active Syncフラットファイル Active Sync アダプタは、com.waveset.adapter.FlatFileActiveSyncAdapter クラスで定義されます。
フラットファイル Active Sync アダプタでは、次のタイプのファイルを読み取ることができます。
パーサークラスが com.waveset.util.FlatFileIterator インタフェースを実装する場合は、カスタムパーサーも使用できます。
このアダプタはソース専用アダプタで、ファイルへの書き戻しはしません。
次に、フラットファイル Active Sync アダプタを使用するのが適していると思われる事例をいくつか挙げます。
リソースを設定する際の注意事項
アダプタによって読み取られるフラットファイルは、プラットフォームに応じて、ローカルハードドライブ、ネットワーク共有、またはマウント済みドライブのいずれかにあるアプリケーションサーバー (クラスタが実行されている場合は、すべてのアプリケーションサーバー) で利用できるようにしてください。ログディレクトリも、アプリケーションサーバーから見えるようにし、アプリケーションサーバーの処理を実行するアカウントによって書き込めるようにしてください。
もっとも信頼できる設定 (推奨される方法) は、アプリケーションサーバーに対してローカルなドライブにフラットファイルを格納することです。ログファイルも、ローカルディレクトリに書き込まれるようにしてください。異なるホスト上で複数の Identity Manager インスタンスを使用している場合は、1 つのホストをフラットファイル Active Sync の実行用に選択し、Waveset.properties ファイル内でそのホストを sources.hosts プロパティーの値として指定します。これにより、アダプタ上のポーリング操作が sources.hosts プロパティーで指定したホスト (複数可) 上で常に実行されることが保証されます。また、sources.hosts プロパティーで指定するホスト名は、管理インタフェースの「サーバーの設定」ページに表示されるサーバー名と一致させてください。
Identity Manager 上で設定する際の注意事項
このリソースに必要な追加のインストール手順はありません。
使用上の注意
ここでは、フラットファイル Active Sync リソースアダプタの使用に関連する設定の注意点について説明します。次のトピックで構成されています。
全般的な注意事項
LDIF ファイルへのポーリングを行なっている場合、LDAP API によって属性名が小文字に変換されます。したがって、大文字を含む属性名 (accountId など) がある場合、LDAP API によって accountid のように変換されます。Active Sync の起動時に、次のエラーのログがとられます。
com.waveset.util.WavesetException: No name attribute found for user based on Resolve Identity Rule or schema map.
この状況を解決するには、スキーママップで、リソースユーザー属性を accountid に設定します。
フィールドを二重引用符で囲むか、パイプ区切りを使用することによって、CSV ファイル内にコンマ区切りのフィールドを格納できます。Active Sync フォームまたは後続の処理によってデータをリストに変換する必要が生じる場合もあります。
ファイル内の列を使用して accountId を直接設定していないファイルをインポートしたときに、同じエラーが再度発生する可能性があります。このエラーメッセージを回避するには、global.accountId のフィールドを追加し、そのフィールド内で accountId を構築するためのロジックを追加することによって、Active Sync ユーザーフォームを変更します。次に示すフィールド例では、accountId を firstname.lastname に設定しています。ただし、create 操作に対してのみです。
<Field name='waveset.accountId'>
<Expansion>
<concat>
<ref>activeSync.firstname</ref>
<s>.</s>
<ref>activeSync.lastname</ref>
</concat>
</Expansion>
<Disable>
<neq>
<ref>feedOp</ref>
<s>create</s>
</neq>
</Disable>
</Field>ActiveSync 設定
フラットファイル Active Sync アダプタでは、フラットファイルのタイムスタンプを追跡できます。また、このアダプタでは、最後に処理されたファイルを保存しておいて、最新のバージョンと比較できます。Identity Manager は、この 2 つのファイルで異なっているアカウントに対して処理を行います。
これらの機能が有効になっている場合、最初に Identity Manager がソースのフラットファイルをポーリングするときに、そのファイルはコピーされ、同じディレクトリ内に配置されます。コピーされた (保存された) ファイルには、FFAS_timestamp.FFAS という名前が付けられます。この timestamp 部分は、元のファイルが最後に変更された時刻を示しています。タイムスタンプの形式は、ソースファイルのあるオペレーティングシステムによって決まります。
その後のポーリングごとに、Identity Manager は元のファイルのタイムスタンプと最新のタイムスタンプを比較します。新しいタイムスタンプの値が直前の値と同じ場合、ファイルは変更されていないので、次のポーリングが行われるまでそれ以上の処理は実行されません。タイムスタンプの値が異なる場合、Identity Manager は FFAS ファイルの存在をチェックします。このファイルが存在していなければ、Identity Manager は更新されたソースファイルを新しいファイルとして処理します。
タイムスタンプが異なっており、保存されている FFAS ファイルが存在する場合、Identity Manager はソースファイルと保存されているファイルを比較します。この比較によって、変更されていないユーザーを処理の対象から除外します。変更されたユーザーは、アダプタを通して通常の方法で送信され、設定された処理、相関規則および削除規則によって、このユーザーに対する処理が決まります。
これらの規則を利用しやすくするために、差分メカニズムで検出された状況を示すための属性がアダプタによって追加されます。新しく更新されたソースファイル内のみにユーザーが存在している場合、ユーザーレコードには create という値を持つ diffAction という属性が追加されます。ソースファイル内のいずれかのエントリが更新された場合、そのエントリに対して属性 diffAction が追加され、値には update が設定されます。いずれかのユーザーが削除された場合、そのユーザーレコードに対して、diffAction 属性の値は delete になります。
2 つのファイルの比較が完了し、すべてのアカウント処理が行われたら、Identity Manager によって元の FFAS ファイルが削除され、現在のソースファイルが新しい FFAS ファイルにコピーされます。このファイルのタイムスタンプは、直前の FFAS ファイルとは異なるものになります。
サポートされているファイルの例
次に、このアダプタによってサポートされているファイルの例を示します。
コンマ区切り値
accountId,firstname,lastname,email,street address
kb323441,Kevin,Brown,Kevin.Brown@example.com,"1234 Pecan Ave., Ste 30"
pc432343,Penelope,Carter,Penelope.Carter@example.com,4234 Main St.パイプ区切り
accountId|firstname|lastname|email|street address
kb323441|Kevin|Brown|Kevin.Brown@example.com|1234 Pecan Ave., Ste 30
pc432343|Penelope|Carter|Penelope.Carter@example.com|4234 Main St.LDAP データ交換形式
dn: cn=Kevin Brown,ou=People,dc=example,dc=com
changetype: add
objectClass: top
objectClass: person
objectClass: organizationalperson
objectClass: inetorgperson
employeeNumber: kb323441
cn: Kevin Brown
sn: Brown
departmentNumber: 7013
description: Production
displayName: Kevin
givenName: Kevin
mail: Kevin.Brown@example.com
o: Acme
ou: Production
postalAddress: 1234 Pecan Ave., Ste 30
postalCode: 43231
st: CA
street: 1234 Pecan Ave, Ste 30
title: Production Assistant
jpegphoto: file:///c:/photos/Kevin.Brown.jpgセキュリティーに関する注意事項
ここでは、サポートされる接続と特権の要件について説明します。
サポートされる接続
「リソースを設定する際の注意事項」を参照してください。
必要な管理特権
管理ユーザーに、フラットファイルを含むディレクトリに対する読み取りと書き込みのアクセス権を与えてください。「違いのみを処理」 Active Sync パラメータが有効になっている場合は、管理ユーザーに削除のアクセス権も与えてください。
さらに、管理者アカウントには、Active Sync の「ログファイルパス」フィールドに指定したディレクトリに対する読み取り権、書き込み権、削除権が必要です。
プロビジョニングに関する注意事項
次の表に、このアダプタのプロビジョニング機能の概要を示します。
機能
サポート状況
アカウントの有効化/無効化
使用不可
アカウントの名前変更
使用不可
パススルー認証
使用不可
前アクションと後アクション
使用不可
データ読み込みメソッド
Active Sync
アカウント属性
リソースアダプタのスキーマ定義は、フラットファイルの内容に依存します。属性が何も指定されていない場合、アダプタはフラットファイルから取得した属性名を使用します。CSV やパイプ区切りファイルの場合、これらの値は列見出しに対応しています。1 つ以上の Identity Manager の属性名をフラットファイルで定義している列の名前にマップするには、スキーママップのページで、各々のマッピングを設定します。
フラットファイルの形式が LDIF である場合は、バイナリ属性 (グラフィックスファイル、オーディオファイル、証明書など) を指定できます。バイナリ属性は、CSV やパイプ区切りファイルに対してはサポートされていません。
リソースオブジェクトの管理
適用不可
アイデンティティーテンプレート
このアダプタでは、アイデンティティーテンプレートは無視されます。
サンプルフォーム
なし
トラブルシューティング
Identity Manager のデバッグページを使用して、次のクラスにトレースオプションを設定します。
com.waveset.adapter.FlatFileActiveSyncAdapter