スクリプト JDBC
Identity Manager には、すべてのデータベーススキーマおよび JDBC でアクセス可能なすべてのデータベースのユーザーアカウントの管理をサポートするためのスクリプト JDBC リソースアダプタが用意されています。このアダプタは、データベース内のアカウント変更をポーリングする Active Sync もサポートします。
スクリプト JDBC リソースアダプタは汎用アダプタであるため、高度な設定が可能です。このアダプタには、管理対象のデータベーススキーマに関する前提条件はありません。代わりに、顧客が提供するスクリプトセットを呼び出すことによって JDBC によるデータベースとの対話を実行します。現在、顧客が提供するスクリプトは、Javascript (Rhino) または BeanShell で記述できます。
スクリプト JDBC リソースアダプタは、com.waveset.adapter.ScriptedJdbcResourceAdapter クラスで定義されます。
|
注
|
SQL Server へのすべての接続は、同じバージョンの Microsoft SQL Server JDBC ドライバを使用して実行してください。使用可能なバージョンは 2005 または 2000 です。これには、リポジトリだけではなく、SQL Server のアカウントまたはテーブルを管理または要求するすべてのリソースアダプタ (Microsoft SQL アダプタ、Microsoft Identity Integration Server アダプタ、データベーステーブルアダプタ、スクリプト JDBC アダプタ、これらのアダプタをベースとするすべてのカスタムアダプタなど) が含まれます。異なるバージョンのドライバを使用しようとすると、競合エラーが発生します。
|
|
インストールの注意点
管理するデータベースに適した JDBC ドライバの jar を、Identity Manager がインストールされた WEB-INF¥lib ディレクトリにコピーします。
リソースを設定する際の注意事項
なし
使用上の注意
スクリプト JDBC アダプタが呼び出す顧客提供のスクリプトは、Javascript または BeanShell で記述してください。Identity Manager では、それらのスクリプトは名前付きの ResourceAction オブジェクトとして Identity Manager リポジトリに格納されます。
各スクリプト JDBC リソースインスタンスは、名前に基づいて適切な ResourceAction オブジェクトを参照するリソース属性セットによって設定されます。実行時に、アダプタは次の処理を行います。
- 現在のプロビジョニングアクション (作成、削除、更新など) に対応する ResourceAction からスクリプトを読み込む。
- 必要な Java 入力オブジェクトをスクリプトで利用できるように準備する。
- スクリプトを起動する。
- スクリプトから返された結果 (または例外やエラー) を処理する。
この章の残りの部分では、スクリプト JDBC アダプタのプロビジョニングアクション、および各プロビジョニングアクションに割り当てられたスクリプトに対して必要な動作について説明します。
スクリプトは、それ自体に渡された JDBC 接続を閉じることはできません。アダプタが適切な時期に自動的に接続を閉じます。
sample/ScriptedJdbc フォルダの下のファイル階層を参照してください。
各サンプルサブフォルダ (SimpleTable、MultiValue、および StoredProc) には、そのサンプルで使用するファイルセットについて説明する README.txt ファイルがあります。
スクリプト JDBC アダプタは、次のプロビジョニングアクションに関するエンドユーザーのスクリプティングをサポートします。
アクション
|
説明
|
必須性
|
create
|
新しいユーザーを作成します。
|
省略可能。ただし、指定されていない場合は、ユーザーを作成できません。
|
delete
|
既存のユーザーを削除します。
|
省略可能。ただし、指定されていない場合は、ユーザーを削除できません。
|
disable
|
既存のユーザーをネイティブで無効にします。
|
省略可能。ただし、指定されていない場合は、ユーザーをネイティブで無効にできません。
|
enable
|
既存のユーザーをネイティブで有効にします。
|
省略可能。ただし、指定されていない場合は、ユーザーをネイティブで有効にできません。
|
getAccountIterator
|
既存ユーザーの繰り返しの実行に使用されるオブジェクトを返します。
|
省略可能。ただし、getAccountIterator も listAll も指定されていない場合は、アカウントの反復処理を実行できません。
|
getActiveSyncIterator
|
Active Sync 繰り返しの実行に使用されるオブジェクトを返します。
|
省略可能。ただし、指定されていない場合、Active Sync はサポートされません。
|
test
|
「設定のテスト」の間にカスタムテストを実行します。
|
省略可能。
|
getUser
|
既存ユーザーの属性を取得します。
|
省略可能。ただし、指定されていない場合、ユーザーアクションはサポートされません。
|
listAll
|
既存ユーザー (またはほかのオブジェクトタイプ) の ID のリストを返します。
|
省略可能。ただし、getAccountIterator も listAll も指定されていない場合は、アカウントの反復処理を実行できません。
|
update
|
既存ユーザーの属性の更新、名前の変更、またはパスワードの変更を行います。
|
省略可能。ただし、指定されていない場合は、ユーザーの属性、名前、またはパスワードを変更できません。
|
authenticate
|
ユーザー ID とパスワードを確認します。
|
省略可能。ただし、パススルー認証を実行する場合は必須です。
|
どの action スクリプトも、java.util.Map クラスで定義されているように、actionContext マップを受け取ります。マップに格納できる内容は、アクションごとに異なります。
前の表に示されたアクションの詳細については、この章内の次の各項を参照してください。
各項では、これらのアクションの説明に加えて、次の情報を提供しています。
- コンテキスト - スクリプトの実行前にアダプタが Javascript 実行コンテキストに追加する actionContext マップで使用できる一連のエントリについて説明します。
- エラー処理 - 異常やエラー条件をスクリプトがどのように処理する必要があるかを説明します。
create アクション
顧客のデータベースのユーザーを作成するには、create アクションを使用します。create アクションが定義されていない場合は、アダプタは新しいユーザーを顧客のデータベースに作成できません。
コンテキスト
actionContext マップには次のエントリが含まれます。
キー
|
値の型
|
値の説明
|
conn
|
java.sql.Connection
|
顧客のデータベースへの JDBC 接続。
|
adapter
|
com.waveset.adapter. ScriptedJdbcResourceAdapter
|
アダプタインスタンス。
|
action
|
java.lang.String
|
「createUser」という文字列。
|
id
|
java.lang.String
|
作成するユーザーのアカウント ID。
|
password
|
java.lang.String
|
存在する場合、この値は、新しいユーザーの復号化されたパスワードです。
|
attributes
|
java.util.Map
|
新しいユーザーに設定する属性のマップ。
|
errors
|
java.util.List
|
最初は、この値は空のリストです。
処理中にエラーが発生した場合、スクリプトによってこのリストに java.lang.String オブジェクトを追加できます。
|
trace
|
com.waveset.adapter.Trace
|
実行のトレースに使用されるオブジェクト。
スクリプトは、このクラスのメソッドを使用して、それ自体を顧客の環境でデバッグ可能にできます。
|
エラー処理
スクリプト内から例外がスローされた場合は、失敗とみなされます。
スクリプトでエラーが発生した場合、スクリプトによって errors キーに適切な文字列を追加することもできます。errors リストに項目が存在する場合は、作成の失敗とみなされます。
getUser アクション
getUser アクションは、顧客のデータベースから既存のユーザー属性のマップを取得します。getUser アクションが定義されていない場合は、アダプタはユーザーアクションを実行できません。
コンテキスト
actionContext マップには次のエントリが含まれます。
キー
|
値の型
|
値の説明
|
conn
|
java.sql.Connection
|
顧客のデータベースへの JDBC 接続。
|
adapter
|
com.wavset.adapter. ScriptedJdbcResourceAdapter
|
アダプタインスタンス。
|
action
|
java.lang.String
|
「getUser」という文字列。
|
id
|
java.lang.String
|
取得するユーザーアカウント ID。
|
attrsToGet
|
java.util.List
|
取得するユーザー属性を識別する文字列のリスト。このリストは、スキーママップの右側から取得されます。
|
result
|
java.util.Map
|
- ユーザーが現在データベースに存在しない場合、スクリプトはこのマップを空のままにします。
- ユーザーが存在する場合は、このあとにある、想定されるマップの説明を参照してください。
|
errors
|
java.util.List
|
最初は、この値は空のリストです。
処理中にエラーが発生した場合、スクリプトによってこのリストに java.lang.String オブジェクトを追加できます。
|
trace
|
com.waveset.adapter.Trace
|
実行のトレースに使用されるオブジェクト。
スクリプトは、このクラスのメソッドを使用して、それ自体を顧客の環境でデバッグ可能にできます。
|
アダプタは、result マップに次のエントリが入力されることを想定しています。
キー
|
値の型
|
値の説明
|
attrMap
|
java.util.Map
|
スクリプトがユーザー属性を直接取得できる場合は、ユーザー属性のマップでこのエントリを設定できます。
|
isDisabled
|
java.lang.Boolean または java.lang.String
|
スクリプトによって Boolean.TRUE または true の文字列に設定されている場合、そのユーザーは無効とみなされます。
|
エラー処理
スクリプト内から例外がスローされた場合は、失敗とみなされます。
スクリプトでエラーが発生した場合、スクリプトによって errors キーに適切な文字列を追加できます。errors リストに項目が存在する場合は、取得の失敗とみなされます。
delete アクション
顧客のデータベースからユーザーを削除するには、delete アクションを使用します。delete アクションが定義されていない場合は、アダプタは顧客のデータベースからユーザーを削除できません。
コンテキスト
actionContext マップには次のエントリが含まれます。
キー
|
値の型
|
値の説明
|
conn
|
java.sql.Connection
|
顧客のデータベースへの JDBC 接続。
|
adapter
|
com.wavset.adapter. ScriptedJdbcResourceAdapter
|
アダプタインスタンス。
|
action
|
java.lang.String
|
「deleteUser」という文字列。
|
id
|
java.lang.String
|
削除するユーザーアカウント ID。
|
errors
|
java.util.List
|
最初は、この値は空のリストです。
処理中にエラーが発生した場合、スクリプトによってこのリストに java.lang.String オブジェクトを追加できます。
|
trace
|
com.waveset.adapter.Trace
|
実行のトレースに使用されるオブジェクト。
スクリプトは、このクラスのメソッドを使用して、それ自体を顧客の環境でデバッグ可能にできます。
|
エラー処理
スクリプト内から例外がスローされた場合は、失敗とみなされます。
スクリプトでエラーが発生した場合、スクリプトによって errors キーに適切な文字列を追加できます。errors リストに項目が存在する場合は、削除の失敗とみなされます。
update アクション
顧客のデータベース内の既存ユーザーを更新するには、update アクションを使用します。更新には、属性の変更、パスワードの変更、または名前の変更を含めることができます。update アクションが定義されていない場合は、顧客のデータベース内のユーザーを更新できません。
コンテキスト
actionContext マップには次のエントリが含まれます。
キー
|
値の型
|
値の説明
|
conn
|
java.sql.Connection
|
顧客のデータベースへの JDBC 接続。
|
adapter
|
com.wavset.adapter. ScriptedJdbcResourceAdapter
|
アダプタインスタンス。
|
action
|
java.lang.String
|
「updateUser」という文字列。
|
id
|
java.lang.String
|
既存のユーザーのアカウント ID。
|
attributes
|
java.util.Map
|
新しいユーザーに設定する属性のマップ。
- キーは、設定する属性を識別します。
- 値は、その属性に設定する復号化された値です。
属性のマップエントリが存在しない場合は、その属性を変更しないでください。
|
newId
|
java.lang.String
|
存在する場合、スクリプトは既存ユーザーのアカウント ID (id 属性の値で識別される) を、newId 属性値で指定された新しいアカウント ID に変更する必要があります。
|
password
|
java.lang.String
|
存在する場合、この値はユーザーの新しいパスワードの復号化された値です。
|
errors
|
java.util.List
|
最初は、この値は空のリストです。
処理中にエラーが発生した場合、スクリプトによってこのリストに java.lang.String オブジェクトを追加できます。
|
trace
|
com.waveset.adapter.Trace
|
実行のトレースに使用されるオブジェクト。
スクリプトは、このクラスのメソッドを使用して、それ自体を顧客の環境でデバッグ可能にできます。
|
エラー処理
スクリプト内から例外がスローされた場合は、失敗とみなされます。
スクリプトでエラーが発生した場合、スクリプトによって errors キーに適切な文字列を追加できます。errors リストに項目が存在する場合は、更新の失敗とみなされます。
enable アクション
顧客のデータベース内のユーザーを有効にするには、enable アクションを使用します。顧客のデータベース内のユーザーのスキーマが有効/無効の概念をサポートする場合に、このアクションを実装します。enable アクションが定義されていない場合は、アダプタは顧客のデータベース内のユーザーを直接有効にすることはできません。
コンテキスト
actionContext マップには次のエントリが含まれます。
キー
|
値の型
|
値の説明
|
conn
|
java.sql.Connection
|
顧客のデータベースへの JDBC 接続。
|
adapter
|
com.wavset.adapter.ScriptedJdbcResourceAdapter
|
アダプタインスタンス。
|
action
|
java.lang.String
|
「enableUser」という文字列。
|
id
|
java.lang.String
|
有効にするユーザーアカウント ID。
|
errors
|
java.util.List
|
最初は、この値は空のリストです。
処理中にエラーが発生した場合、スクリプトによってこのリストに java.lang.String オブジェクトを追加できます。
|
trace
|
com.waveset.adapter.Trace
|
実行のトレースに使用されるオブジェクト。
スクリプトは、このクラスのメソッドを使用して、それ自体を顧客の環境でデバッグ可能にできます。
|
エラー処理
スクリプト内から例外がスローされた場合は、失敗とみなされます。
スクリプトでエラーが発生した場合、スクリプトによって errors キーに適切な文字列を追加できます。errors リストに項目が存在する場合は、失敗とみなされます。
disable アクション
顧客のデータベース内のユーザーを無効にするには、disable アクションを使用します。顧客のデータベース内のユーザーのスキーマが有効/無効の概念をサポートする場合に、このアクションを実装します。disable アクションが定義されていない場合は、アダプタは顧客のデータベース内のユーザーを直接無効にすることはできません。
コンテキスト
actionContext マップには次のエントリが含まれます。
キー
|
値の型
|
値の説明
|
conn
|
java.sql.Connection
|
顧客のデータベースへの JDBC 接続。
|
adapter
|
com.wavset.adapter.ScriptedJdbcResourceAdapter
|
アダプタインスタンス。
|
action
|
java.lang.String
|
「disableUser」という文字列。
|
id
|
java.lang.String
|
無効にするユーザーアカウント ID。
|
errors
|
java.util.List
|
最初は、この値は空のリストです。
処理中にエラーが発生した場合、スクリプトによってこのリストに java.lang.String オブジェクトを追加できます。
|
trace
|
com.waveset.adapter.Trace
|
実行のトレースに使用されるオブジェクト。
スクリプトは、このクラスのメソッドを使用して、それ自体を顧客の環境でデバッグ可能にできます。
|
エラー処理
スクリプト内から例外がスローされた場合は、失敗とみなされます。
スクリプトでエラーが発生した場合、スクリプトが errors キーに適切な文字列を追加することもできます。errors リストに項目が存在する場合は、失敗とみなされます。
listAll アクション
顧客のデータベース内にあるユーザー (またはほかのオブジェクトタイプ) の ID のリストを取得するには、listAll アクションを使用します。listAll アクションが定義されていない場合は、FormUtil.listResourceObjects メソッドをこのリソースインスタンスのためにフォームから呼び出すことはできません。
さらに、listAll アクションまたは getAccountIterator アクションが定義されていない場合、アカウントの反復処理 (調整、「リソースから読み込み」) はサポートされません。
コンテキスト
actionContext マップには次のエントリが含まれます。
キー
|
値の型
|
値の説明
|
conn
|
java.sql.Connection
|
顧客のデータベースへの JDBC 接続。
|
adapter
|
com.wavset.adapter.ScriptedJdbc ResourceAdapter
|
アダプタインスタンス。
|
action
|
java.lang.String
|
「listAllObjects」という文字列。
|
objectType
|
java.lang.String
|
リストするオブジェクト ID のタイプを示します。
通常、ユーザー ID を表示するには account オブジェクトタイプを使用します。ほかのオブジェクトタイプの ID を生成するようにスクリプトが記述されている場合は、ほかのオブジェクトタイプの ID (group など) を使用できます。
|
options
|
java.util.Map
|
listResourceObjects 呼び出しに渡すことができる追加の (省略可能な) オプション。
|
resultList
|
java.util.List
|
スクリプトがこのリストにエントリを追加します。
スクリプトがこのリストに追加する各項目は文字列 ID です。
|
errors
|
java.util.List
|
最初は、この値は空のリストです。
処理中にエラーが発生した場合、スクリプトによってこのリストに java.lang.String オブジェクトを追加できます。
|
trace
|
com.waveset.adapter.Trace
|
実行のトレースに使用されるオブジェクト。
スクリプトは、このクラスのメソッドを使用して、それ自体を顧客の環境でデバッグ可能にできます。
|
エラー処理
スクリプト内から例外がスローされた場合は、失敗とみなされます。
スクリプトでエラーが発生した場合、スクリプトによって errors キーに適切な文字列を追加することもできます。errors リストに項目が存在する場合は、失敗とみなされます。
getAccountIterator アクション
既存ユーザーの繰り返しの実行に使用されるアダプタにオブジェクトを返すには、getAccountIterator アクションを使用します。
アカウントの反復処理 (調整、「リソースから読み込み」) を実行するには、このアクションまたは listAll アクションを定義してください。getAccountIterator アクションが定義されていない場合は、listAll を呼び出してから listAll のリスト内の ID ごとに getUser を呼び出すことによって、アカウントの反復処理が実行されます。
さらに、getAccountIterator アクションまたは listAll アクションが定義されていない場合は、アカウントの反復処理はサポートされません。
コンテキスト
actionContext マップには次のエントリが含まれます。
キー
|
値の型
|
値の説明
|
conn
|
java.sql.Connection
|
顧客のデータベースへの JDBC 接続。
|
adapter
|
com.wavset.adapter.ScriptedJdbcResourceAdapter
|
アダプタインスタンス。
|
action
|
java.lang.String
|
「getAccountIterator」という文字列。
|
result
|
java.util.Map
|
後述の result の説明を参照してください。
|
errors
|
java.util.List
|
最初は、この値は空のリストです。
処理中にエラーが発生した場合、スクリプトによってこのリストに java.lang.String オブジェクトを追加できます。
|
trace
|
com.waveset.adapter.Trace
|
実行のトレースに使用されるオブジェクト。
スクリプトは、このクラスのメソッドを使用して、それ自体を顧客の環境でデバッグ可能にできます。
|
アダプタは、result マップに次のエントリが入力されることを想定しています。
キー
|
値の型
|
値の説明
|
iterator
|
com.waveset.adapter.script. ScriptedIterator
|
スクリプトによって、この値を ScriptedIterator インタフェースの生成インスタンスに設定する必要があります。
public interface ScriptedIterator {
public boolean hasNext();
public void next(java.util.Map
nextObj);
public void close();
}
アダプタは、next() に渡される nextObj マップに、iterator によって各繰り返しユーザーの属性が入力されることを想定しています。
オブジェクトは、顧客のデータベース内のすべてのユーザーを繰り返しできる必要があります。
サンプルは、BeanShell および Javascript でこれを行う方法を示しています。
|
エラー処理
スクリプト内から例外がスローされた場合は、失敗とみなされます。
スクリプトでエラーが発生した場合、スクリプトによって errors キーに適切な文字列を追加することもできます。errors リストに項目が存在する場合は、失敗とみなされます。
getActiveSyncIterator アクション
getActiveSyncIterator アクションは、Active Sync 繰り返しの実行に使用されるアダプタにオブジェクトを返します。
リソースで Active Sync をサポートする場合は、このアクションを定義してください。
コンテキスト
actionContext マップには次のエントリが含まれます。
キー
|
値の型
|
値の説明
|
conn
|
java.sql.Connection
|
顧客のデータベースへの JDBC 接続。
|
adapter
|
com.wavset.adapter.ScriptedJdbc ResourceAdapter
|
アダプタインスタンス。
|
action
|
java.lang.String
|
「getActiveSyncIterator」という文字列。
|
options
|
java.util.Map
|
このマップには、lastProcessed キーを持つエントリを含めることができます。このエントリ値は、Active Sync で正常に処理された最後のユーザーの属性のマップです。
lastProcessed エントリを使用して iterator から対象外のユーザーを除外するクエリーを作成する方法の例については、SimpleTable サンプル (SimpleTable-activeSynciter-bsh.xml スクリプト) を参照してください。
|
activeSyncLogger
|
com.waveset.adapter.logging. IActiveSyncLogger
|
リソースの Active Sync ログファイルへのログエントリの書き込みに使用されるオブジェクト。
|
result
|
java.util.Map
|
後述の result の説明を参照してください。
|
errors
|
java.util.List
|
最初は、この値は空のリストです。
処理中にエラーが発生した場合、スクリプトによってこのリストに java.lang.String オブジェクトを追加できます。
|
trace
|
com.waveset.adapter.Trace
|
実行のトレースに使用されるオブジェクト。
スクリプトは、このクラスのメソッドを使用して、それ自体を顧客の環境でデバッグ可能にできます。
|
アダプタは、result マップに次のエントリが入力されることを想定しています。
キー
|
値の型
|
値の説明
|
iterator
|
com.waveset.adapter.script. ScriptedIterator
|
スクリプトによって、この値を ScriptedIterator インタフェースの生成インスタンスに設定する必要があります。
public interface ScriptedIterator {
public boolean hasNext();
public void next(java.util.Map
nextObj);
public void close();
}
アダプタは、next() に渡される nextObj マップに、iterator によって各繰り返しユーザーの属性が入力されることを想定しています。
オブジェクトは、顧客のデータベース内のすべてのユーザーを繰り返しできる必要があります。
サンプルは、BeanShell および Javascript でこれを行う方法を示しています。
|
エラー処理
スクリプト内から例外がスローされた場合は、失敗とみなされます。
スクリプトでエラーが発生した場合、スクリプトによって errors キーに適切な文字列を追加することもできます。errors リストに項目が存在する場合は、失敗とみなされます。
authenticate アクション
顧客のデータベースに対してユーザー ID/パスワードを認証するには、authentication アクションを使用します。authentication アクションが定義されていない場合、そのリソースではパススルー認証をサポートできません。
コンテキスト
actionContext マップには次のエントリが含まれます。
キー
|
値の型
|
値の説明
|
conn
|
java.sql.Connection
|
顧客のデータベースへの JDBC 接続。
|
adapter
|
com.wavset.adapter.ScriptedJdbcResourceAdapter
|
アダプタインスタンス。
|
action
|
java.lang.String
|
「authenticateUser」という文字列。
|
id
|
java.lang.String
|
認証するユーザーのアカウント ID。
|
password
|
java.lang.String
|
認証対象の復号化されたパスワード。
|
result
|
java.util.Map
|
スクリプトは、ユーザーのパスワードが期限切れになっていることを示す expired キーと Boolean.TRUE 値を持つエントリを追加できます。
|
errors
|
java.util.List
|
最初は、この値は空のリストです。
処理中にエラーが発生した場合、スクリプトによってこのリストに java.lang.String オブジェクトを追加できます。
|
trace
|
com.waveset.adapter.Trace
|
実行のトレースに使用されるオブジェクト。
スクリプトは、このクラスのメソッドを使用して、それ自体を顧客の環境でデバッグ可能にできます。
|
エラー処理
スクリプトが失敗なく実行された場合、ID とパスワードは有効とみなされます。
スクリプト内から例外がスローされた場合は、認証の失敗とみなされます。
スクリプトでエラーが発生した場合、スクリプトによって適切な文字列を errors キーにエイリアスすることができます。errors リストに項目が存在する場合は、認証の失敗とみなされます。
test アクション
定義されている場合、test アクションは、リソースの「設定のテスト」の間に呼び出されます。通常、test スクリプトは、必要なデータベーステーブルにアダプタがアクセスできることを確認するために使用されます
コンテキスト
actionContext マップには次のエントリが含まれます。
キー
|
値の型
|
値の説明
|
conn
|
java.sql.Connection
|
顧客のデータベースへの JDBC 接続。
|
adapter
|
com.wavset.adapter.ScriptedJdbcResourceAdapter
|
アダプタインスタンス。
|
action
|
java.lang.String
|
「test」という文字列。
|
errors
|
java.util.List
|
最初は、この値は空のリストです。
処理中にエラーが発生した場合、スクリプトによってこのリストに java.lang.String オブジェクトを追加できます。
|
trace
|
com.waveset.adapter.Trace
|
実行のトレースに使用されるオブジェクト。
スクリプトは、このクラスのメソッドを使用して、それ自体を顧客の環境でデバッグ可能にできます。
|
エラー処理
スクリプト内から例外がスローされた場合は、失敗とみなされます。
スクリプトでエラーが発生した場合、スクリプトが errors キーに適切な文字列を追加することもできます。errors リストに項目が存在する場合は、テストの失敗とみなされます。
プロビジョニングに関する注意事項
次の表に、このアダプタのプロビジョニング機能の概要を示します。
機能
|
サポート状況
|
アカウントの有効化/無効化
|
使用可
|
アカウントの名前変更
|
使用可
|
アカウントの作成
|
使用可
|
アカウントの更新
|
使用可
|
アカウントの削除
|
使用可
|
パススルー認証
|
使用可
|
パスワードの更新
|
使用可
|
データ読み込みメソッド
|
- リソースから直接インポート
- 調整
- Active Sync
|
アカウント属性
アカウント属性は管理対象のデータベーススキーマによってかなり異なるため、スクリプト JDBC アダプタにはデフォルトのアカウント属性が用意されていません。
このアダプタでは、Oracle の BLOBなどのバイナリデータ型がサポートされます。対応する属性は、スキーママップでバイナリとしてマークされている必要があります。バイナリ属性の例には、グラフィックスファイル、オーディオファイル、証明書などがあります。
セキュリティーに関する注意事項
サポートされる接続および必要な管理特権を確認するには、管理するデータベースの製品マニュアルを参照してください。
リソースオブジェクトの管理
リソースオブジェクトの管理では、すべてのオブジェクトを表示する機能のみがサポートされます。このアダプタでは、すべてのリソースオブジェクトタイプの ID のリストを取得できます。
アイデンティティーテンプレート
$accountId$
サンプルフォーム
- MultiValueUserForm.xml
- SimpleTableUserForm.xml
トラブルシューティング
Identity Manager のデバッグページを使用して、次のクラスまたはパッケージでトレースオプションを設定します。
- com.waveset.adapter.ScriptedJdbcResourceAdapter
- com.waveset.adapter.JdbcResourceAdapter
- com.waveset.adapter.script
スクリプトに渡されるアクションコンテキストでは com.sun.idm.logging.trace.Trace オブジェクトが常に渡されます。
スクリプトのトレースを有効にするには、com.waveset.adapter.ScriptedJdbcResourceAdapter でトレースを有効にします。
さらに、次のスクリプトを使用して、出力のトレースや書き込みを実行できます。
- BeanShell では、次の行で行トレースを有効にします。
this.interpreter.TRACE=true;
- BeanShell では、次の Java 形式の文によって 標準出力 に文字列を書き込みます。
java.lang.System.out.println("Hello World");
- Javascript では、次の Java 形式の文によって 標準出力 に文字列を書き込みます。
Packages.java.lang.System.out.println("Hello World");
Active Sync が実行されている場合は、リソースインスタンスに対して次の Identity Manager Active Sync ロギングパラメータを設定できます。
- ログアーカイブの最大数
- アクティブログの最大有効期間
- ログファイルの最大サイズ
- ログファイルパス
- ログレベル