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

第 10 章 データベーステーブル

データベーステーブルは、com.waveset.adapter.DatabaseTableResourceAdapter クラスで定義されます。

アダプタの詳細

このアダプタは、JDBC ドライバを備えたリレーショナルデータベースをすべてサポートします。

データベーステーブルリソースアダプタは、単一のカスタムデータベーステーブルに配置されたユーザーに接続して管理するための一連の手順を実行できるように設計されています。このアダプタは、アカウント変更をポーリングする Active Sync もサポートします。


注 –

このリソースは、一般的に複数のテーブルで使用されている、DBMS システムアカウントを管理するように設計されていません。アダプタは結合の操作をサポートしません。DBMS システムアカウントを管理したい場合には、Oracle、SQL Server、DB2、Sybase、および MySQL リソースを引き続き使用してください。


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

なし

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

SQL Server へのすべての接続は、同じバージョンの Microsoft SQL Server JDBC ドライバを使用して実行してください。使用可能なバージョンは 2005 または 2000 です。これには、リポジトリだけではなく、SQL Server のアカウントまたはテーブルを管理または要求するすべてのリソースアダプタ (Microsoft SQL アダプタ、Microsoft Identity Integration Server アダプタ、データベーステーブルアダプタ、スクリプト JDBC アダプタ、これらのアダプタをベースとするすべてのカスタムアダプタなど) が含まれます。異なるバージョンのドライバを使用しようとすると、競合エラーが発生します。

使用上の注意

ここでは、データベースリソースアダプタの使用に関連する次のような設定の注意点について説明します。

一般的な設定

新しくデータベーステーブルリソースを設定するには、次の手順に従います。

Procedure新しいデータベーステーブルアダプタを設定する: 一般的な手順

  1. データベースアクセスパラメータを指定します。データベースタイプ、接続情報、管理対象のテーブルが配置されているデータベース名などがあります。

  2. そのデータベースで使用可能なすべてのテーブルが、「データベーステーブル」ページに表示されます。このリソースのリソースアカウントを格納するテーブルを選択します。

  3. Identity Manager で管理する列をテーブルから選択します。ウィザードページで表示されている列のうちの 1 つをキー列として指定し、ユーザーのアカウント名属性用に使用します。 さらに、別の 1 列をパスワード列として指定し、アカウントパスワード用に使用します。その他の列は、管理対象の属性として選択できます。

  4. リソーススキーママップページには、管理対象として選択されたこれらの属性が表示されます。このページにはキー属性やパスワード属性は表示されません。これらの属性は暗黙的に管理されます。

  5. Active Sync 設定ページでは、Active Sync に関連するデータベーステーブル属性を任意で指定できます。アダプタを Active Sync として使用しない場合は、これらの値をスキップできます。詳細は、「ActiveSync 設定」を参照してください。

  6. このリソースに使用するアイデンティティーテンプレートを指定します。これは、キー属性に使用する Identity Manager の属性名です。

  7. このリソース用の Identity Manager リソースパラメータを指定します。ここには、リソース名、Active Sync のスケジューリングとロギング、リソースの承認者などの情報が含まれます。

ActiveSync 設定


注 –

Active Sync アダプタは、アカウントの削除を検出しません。このため、アカウントの削除を検出するように調整してください。


データベーステーブルアダプタは、Active Sync ポーリングの実行中に、ユーザーフォーム (指定されている場合はワークフロー) に渡すためのリソースアカウントを、指定したデータベーステーブルから選択します。

「静的検索述語」パラメータによって、データベースから返されるアカウントを限定するために使用される任意の静的な述語を指定します。述語は SQL 式として評価されます。このパラメータは、ネイティブな SQL 構文で表してください。

次の例は、このパラメータの使用方法を示したものです。

syncState = ”P’

この例では、syncState という名前の列が存在することと、P が取り得る値であることが必要です。この値を「最後にフェッチされた述語」パラメータと結合させることで、完全な修飾子が形成されます。

「付加する結合子」パラメータの値は、AND または OR です。これは、最後にフェッチされた述語の前に付加される結合を指定します。

「最後にフェッチされた述語」パラメータでは、述語をもう 1 つ任意で指定しますが、この述語には Identity Manager で定義された 1 つ以上のユーザー属性を含めることができます。この機能によって、前回のポーリングで返された値を現在のポーリングで返された値と比較する述語を、ネイティブ SQL 構文で構築することができます。たとえば、lastMod 列にタイムスタンプが格納されていれば、その値を各ポーリングで比較することができます。次に、現在のポーリングの値が前のポーリングの値より大きい場合は、データベースエントリに関する情報を返します。次の式は、この機能を示しています。

lastMod > ’$(lastmod)’

括弧内には、スキーママップページで定義された Identity Manager ユーザー属性を指定する必要があります。$(lastmod) トークンは、前のポーリングで返された値に置き換えられます。たとえば、2004-06-20 6:23:00 などの値になります。


注 –

アダプタが最初にポーリングを行なったときは、前に取得された値が存在しないため、「LAST FETCHED フィルタ」は適用されません。このフィルタは、その後のすべてのポーリングで実行されます。


データベーステーブルアダプタは、「静的検索述語」、「付加する結合子」、および「最後にフェッチされた述語」リソースパラメータを連結して、次のような検索式を送信します。

syncState = ’P’ AND lastMod > ’2004-06-20 6:23:00’

ORDER BY パラメータを使用すると、指定した順序で行を処理するためのポーリングを強制する、ネイティブの SQL ORDER BY 節を指定できます。値の中には ORDER BY という単語を含めないでください。たとえば、lastMod の値を指定する場合、行は lastMod 列に基づいて、昇順に並べ替えられます。

オプションで、「変更時に実行するプロセス」パラメータを指定した場合、データベースから返されるそれぞれの修飾アカウントで起動する Identity Manager ワークフローが特定されます。このワークフローに渡される値のマップは、スキーママップの左側の属性によってキー設定されます。この値が指定されていない場合は、標準の Active Sync ユーザーフォーム処理によって更新が実行されます。

セキュリティーに関する注意事項

データベーステーブルに接続するプロキシユーザーには、次の特性が必要です。

プロビジョニングに関する注意事項

次の表に、このアダプタのプロビジョニング機能の概要を示します。

機能  

サポート状況  

アカウントの有効化/無効化 

なし 

アカウントの名前の変更 

あり 

パススルー認証 

なし 

前アクションと後アクション 

なし 

データ読み込みメソッド 

  • リソースからインポート

  • Active Sync

  • 調整

アカウント属性

リソースユーザー属性は、リソースの作成または編集中にウィザードによって設定されます。次に、選択したユーザーのこれらの列の値が、Identity Manager ユーザー属性で見つかった対応する属性名でマップされます。

このアダプタでは、Oracle の BLOBなどのバイナリデータ型がサポートされます。対応する属性は、スキーママップでバイナリとしてマークされている必要があります。バイナリ属性の例には、グラフィックスファイル、オーディオファイル、証明書などがあります。

waveset.properties ファイル内の sources.ResourceName.hosts プロパティーを使用して、Active Sync アダプタの同期部分の実行にクラスタ内のどのホストを使用するかを制御できます。ResourceName は、リソースオブジェクトの名前に置き換える必要があります。

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

なし

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

$accountId$

サンプルフォーム

なし

トラブルシューティング

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

com.waveset.adapter.DatabaseTableResourceAdapter

さらに、リソースインスタンスに対して次の Identity Manager Active Sync ロギングパラメータを設定できます。