6 Database User Managementコネクタの使用
要件に合せてアプリケーションを構成したら、Database User Managementコネクタを使用してリコンシリエーション操作とプロビジョニング操作を実行できます。
6.1 リコンシリエーションの構成に関するガイドライン
ここでは、Oracle DatabaseおよびMySQLのリコンシリエーションを構成する際に適用する必要があるガイドラインについて説明します。
-
ターゲット・リソースのリコンシリエーションを実行する前に、参照定義をターゲット・システムの参照フィールドと同期する必要があります。つまり、ユーザー・リコンシリエーションの実行前に、参照フィールド同期用のスケジュール済ジョブを実行する必要があります。
-
バッチ・リコンシリエーションを構成した後、バッチ・リコンシリエーション実行中にリコンシリエーションが失敗した場合は、タスク属性の値を変更せずにスケジュール済ジョブを再実行します。
6.2 リコンシリエーションの構成
コネクタを構成して、リコンシリエーションのタイプおよびそのスケジュールを指定できます。
6.2.1 Oracle Databaseのリコンシリエーションの構成
コネクタを構成して、リコンシリエーションのタイプおよびそのスケジュールを指定できます。
6.2.1.1 Oracle Databaseからの完全および増分リコンシリエーションの実行
完全リコンシリエーションでは、既存のすべてのユーザー・レコードをターゲット・システムからOracle Identity Governanceへリコンサイルします。アプリケーションを作成した後はまず、完全リコンシリエーションを実行する必要があります。
リコンシリエーション実行の最後で、ユーザー・レコード・リコンシリエーションのリコンシリエーション・ジョブのLatest Tokenパラメータが自動的に更新されます。直後のリコンシリエーション実行からは、このタイムスタンプの後に作成されたレコードのみがリコンシリエーションの対象になります。これが、増分リコンシリエーションです。
すべてのターゲット・システム・レコードをOracle Identity Governanceで確実にリコンサイルする必要がある場合には、いつでも増分リコンシリエーションを完全リコンシリエーションに切り替えることができます。
完全リコンシリエーションを実行するには、Latest TokenおよびFilterパラメータに現在割り当てられている値を削除し、次のいずれかのリコンシリエーション・ジョブを実行します。
-
Oracle Databaseターゲット・アプリケーションの場合: DBUM Oracle User Target Reconciliation
-
Oracle Database認可アプリケーションの場合: DBUM Oracle User Trusted Reconciliation
これらのリコンシリエーション・ジョブの詳細は、「Oracle Databaseのリコンシリエーション・ジョブ」を参照してください。
たとえば、Incremental Recon AttributeはDBA_USERS表のCREATED列にマップされます。初回の完全リコンシリエーション実行の後、それに応じてLatest Tokenパラメータが移入されます。後続のリコンシリエーション実行時に、コネクタは、Latest Tokenパラメータのタイムスタンプの後に作成されたユーザー・レコードのみをフェッチします。タイムスタンプの後に更新されたユーザーはフェッチされません。
6.2.1.2 Oracle Databaseからの制限付きリコンシリエーションの実行
リコンシリエーション・モジュールにフィルタを作成して制限付きリコンシリエーションを実行し、指定されたフィルタ基準に基づいて、ターゲット・システムからレコードをリコンサイルできます。
デフォルトでは、前回のリコンシリエーションの実行後に追加または変更されたすべてのターゲット・システム・レコードが、現在のリコンシリエーションの実行中にリコンサイルされます。リコンサイルする必要のある追加または変更されたターゲット・システム・レコードのサブセットを指定して、このプロセスをカスタマイズできます。
このコネクタのFilter属性(スケジュール済タスクの属性)により、任意のDBUMリソース属性を使用してターゲット・システム・レコードをフィルタ処理できます。フィルタは、コネクタ・インストール・メディアのbundleディレクトリにあるJARファイルに格納されているリコンシリエーション問合せファイル内の親パラメータに適用できます。たとえば、リコンシリエーション問合せファイルを見つけるには、bundle/org.identityconnectors.dbum-12.3.0.jar
ファイルを抽出し、scripts/oracle/Search.queries
を開きます。
次の表に、スケジュール済ジョブのFilter属性で使用できる親パラメータのリストを示します。
パラメータ | 説明 |
---|---|
__UID__ |
ユーザーを表す固有の識別子 このパラメータは、USERNAMEまたは__NAME__コネクタ属性にマップされます。 |
authType |
ユーザー・アカウントの認証タイプ このパラメータの値はPASSWORDにする必要があります。 |
tablespace |
ユーザー操作用のデフォルト表領域 |
defaultQuota |
デフォルト表領域のユーザー操作用の割当て制限 値が指定されていない場合、割当て制限は無制限に設定されます。 |
globalDN |
認証タイプがGLOBALの場合、ユーザーを識別する企業内で固有の名前。 |
__ENABLE__ |
ユーザー・アカウントのステータス 値がLOCKED、EXPIREDまたはLOCKED & EXPIREDの場合、ユーザーは無効化されます。 無効化されたステータスの値リストは、Lookup.DBUM.Oracle.Configuration参照定義に含まれています。 |
tempTableSpace |
ユーザー操作用の一時表領域 一時表領域の割当て制限は、常に無制限です。 |
profile |
ユーザー・アカウントのプロファイル |
lastModified |
最後に変更されたタイムスタンプ このパラメータは、増分リコンシリエーション操作に使用されます。 |
ICFフィルタの詳細は、『Oracle Fusion Middleware Oracle Identity Governanceのためのアプリケーションの開発とカスタマイズ』のICFフィルタ構文に関する項を参照してください。
6.2.1.3 Oracle Databaseからのバッチ・リコンシリエーションの実行
バッチ・リコンシリエーションを実行し、ターゲット・システムからOracle Identity Governanceへ特定の数のレコードをリコンサイルできます。
リコンシリエーションの実行中に、ターゲット・システム・レコードのすべての変更内容がOracle Identity Governanceにリコンサイルされます。リコンサイルされるレコード数によっては、このプロセスに長い時間がかかる場合があります。また、リコンシリエーション中に接続が中断すると、プロセスの完了にはさらに時間がかかります。これらの問題を避けるため、バッチ・リコンシリエーションを構成できます。
バッチ・リコンシリエーションを構成するには、Batch Sizeリコンシリエーション・ジョブ・パラメータに値を指定する必要があります。このパラメータを使用して、各バッチに含める必要があるレコード数を指定します。デフォルトでは、この値は空です。
All
以外の値を指定した場合、新規追加または修正されたユーザー・レコードの一部は、その回のリコンシリエーション中にはリコンサイルされない可能性があります。次に、この例を示します。
スケジュール済ジョブの構成時に「バッチ・サイズ」値を200
に指定するとします。前回のリコンシリエーション実行後に、314件のユーザー・レコードが作成または修正されたとします。これら314レコードのうち、200レコードが今回のリコンシリエーション実行中にリコンサイルされます。残りの114レコードは、次回のリコンシリエーション実行中にリコンサイルされます。
「リコンシリエーション・ジョブの構成」で説明されている手順に従って、Batch Sizeパラメータに値を指定します。
6.2.2 MySQLのリコンシリエーションの構成
コネクタを構成して、リコンシリエーションのタイプおよびそのスケジュールを指定できます。
6.2.2.1 MySQLからの完全リコンシリエーションの実行
完全リコンシリエーションでは、既存のすべてのユーザー・レコードをターゲット・システムからOracle Identity Governanceへリコンサイルします。アプリケーションを作成した後はまず、完全リコンシリエーションを実行する必要があります。
完全リコンシリエーションを実行するには、Filterパラメータに現在割り当てられている値を削除し、次のいずれかのリコンシリエーション・ジョブを実行します。
-
MySQLターゲット・アプリケーションの場合: DBUM MySQL User Target Reconciliation
-
MySQL認可アプリケーションの場合: DBUM MySQL User Trusted Reconciliation
これらのスケジュール済ジョブの詳細は、「MySQLのリコンシリエーション・ジョブ」を参照してください。
6.2.2.2 MySQLからの制限付きリコンシリエーションの実行
リコンシリエーション・モジュールにフィルタを作成して制限付きリコンシリエーションを実行し、指定されたフィルタ基準に基づいて、ターゲット・システムからレコードをリコンサイルできます。
デフォルトでは、前回のリコンシリエーションの実行後に追加または変更されたすべてのターゲット・システム・レコードが、現在のリコンシリエーションの実行中にリコンサイルされます。リコンサイルする必要のある追加または変更されたターゲット・システム・レコードのサブセットを指定して、このプロセスをカスタマイズできます。
このコネクタのFilter属性(スケジュール済タスクの属性)により、任意のDBUMリソース属性を使用してターゲット・システム・レコードをフィルタ処理できます。フィルタは、コネクタ・インストール・メディアのbundleディレクトリにあるJARファイルに格納されているリコンシリエーション問合せファイル内の親パラメータに適用できます。たとえば、リコンシリエーション問合せファイルを見つけるには、bundle/org.identityconnectors.dbum-12.3.0.jar
ファイルを抽出し、scripts/mysql/Search.queries
を開きます。
次の表に、スケジュール済ジョブのFilter属性で使用できる親パラメータの説明を示します。
パラメータ | 説明 |
---|---|
__UID__ |
ユーザーを表す固有の識別子 このパラメータは、USERNAMEまたは__NAME__コネクタ属性にマップされます。 |
ICFフィルタの詳細は、『Oracle Fusion Middleware Oracle Identity Governanceのためのアプリケーションの開発とカスタマイズ』のICFフィルタ構文に関する項を参照してください。
6.2.2.3 MySQLからのバッチ・リコンシリエーションの実行
バッチ・リコンシリエーションを実行し、ターゲット・システムからOracle Identity Governanceへ特定の数のレコードをリコンサイルできます。
リコンシリエーションの実行中に、ターゲット・システム・レコードのすべての変更内容がOracle Identity Governanceにリコンサイルされます。リコンサイルされるレコード数によっては、このプロセスに長い時間がかかる場合があります。また、リコンシリエーション中に接続が中断すると、プロセスの完了にはさらに時間がかかります。これらの問題を避けるため、バッチ・リコンシリエーションを構成できます。
バッチ・リコンシリエーションを構成するには、リコンシリエーションのスケジュール済ジョブ属性「バッチ・サイズ」に値を指定する必要があります。この属性を使用して、各バッチに含めるレコード数を指定します。デフォルトでは、この値は空です。
All
以外の値を指定した場合、新規追加または修正されたユーザー・レコードの一部は、その回のリコンシリエーション中にはリコンサイルされない可能性があります。次に、この例を示します。
スケジュール済ジョブの構成時に「バッチ・サイズ」値を200
に指定するとします。前回のリコンシリエーション実行後に、314件のユーザー・レコードが作成または修正されたとします。これら314レコードのうち、200レコードが今回のリコンシリエーション実行中にリコンサイルされます。残りの114レコードは、次回のリコンシリエーション実行中にリコンサイルされます。
「リコンシリエーション・ジョブの構成」で説明されている手順に従って、「バッチ・サイズ」属性に値を指定します。
6.3 リコンシリエーション・ジョブの構成
ターゲット・システムで定期的に新しい情報をチェックしてOracle Identity Governanceにそのデータを複製するリコンシリエーションを実行するリコンシリエーション・ジョブを構成します。
この手順は、ユーザーおよび権限のためのリコンシリエーション・ジョブを構成する場合に適用できます。
6.4 プロビジョニング操作の実行に関するガイドライン
ここでは、プロビジョニング操作を実行する際に適用する必要があるガイドラインについて説明します。
6.4.1 Oracle Databaseでのプロビジョニング操作の実行に関するガイドライン
ここでは、プロビジョニング操作を実行する際に適用する必要があるガイドラインについて説明します。
-
プロビジョニング操作を実行する前に、参照定義がターゲット・システムの参照フィールドと同期している必要があります。つまり、プロビジョニング操作の前に、参照フィールド同期用のスケジュール済ジョブを実行してください。
-
Oracle Identity Governanceからプロビジョニングされるユーザー・アカウントのパスワードは、ターゲット・システムで設定されたパスワード・ポリシーに従う必要があります。
-
ターゲット・システム・フィールドの文字長を考慮に入れた上で、対応するOracle Identity Governanceフィールドの値を指定する必要があります。
-
パスワード更新のプロビジョニング操作時に、「パスワード」フィールド内の既存のテキストをクリアしてから、新しいパスワードを入力してください。
-
「ユーザーの作成」プロビジョニング操作時の、オプションのフィールドの一部を次に示します。
-
デフォルト表領域
-
デフォルトの表領域割当て制限(MB)
このフィールドは、「デフォルト表領域」に依存しています。割当て制限を指定するには、「デフォルト表領域」の値を指定する必要があります。
-
一時表領域
-
プロファイル名
「ユーザーの作成」プロビジョニング操作時にこれらのフィールドのいずれかに値を指定した場合、「ユーザーの更新」プロビジョニング操作時にこれらを空にしないでください。そうしない場合、プロビジョニング操作は失敗します。ただし、これらのフィールド内の既存の値は変更できます。
-
-
パスワードで認証されるデータベース・ユーザーを作成する場合、次のフィールドに値を指定する必要があります。
-
ユーザー名: データベース・ユーザーの名前を入力します。
-
パスワード: データベース・ユーザーのパスワードを入力します。
-
認証タイプ: この参照フィールドの値として
PASSWORD
を指定します。
-
-
グローバルに認証されるデータベース・ユーザーを作成する場合、次の必須フィールドに値を指定する必要があります。
-
ユーザー名: データベース・ユーザーの名前を入力します。
-
認証タイプ: この参照フィールドの値として
GLOBAL
を指定します。 -
グローバルDN: 組織の識別名(DN)を入力します。
サンプル値:
cn=ajones,cn=users,dc=oracle,dc=vm
必要なデータを送信すると、コネクタによって次の問合せが実行されて、グローバルに認証されるデータベース・ユーザーが作成されます。
CREATE USER {__NAME__} IDENTIFIED GLOBALLY AS {globalDN}
-
-
「デフォルト表領域割当て制限」フィールドに値を指定する場合、次の書式で値を入力します。
TABLESPACE_QUOTA
M
この書式では、TABLESPACE_QUOTAがユーザーに割り当てられる表領域割当て制限であり、Mは割当ての測定単位がメガバイトであることを示します。サンプル値:
300 M
ユーザーに表領域の無制限の割当て制限を割り当てる場合は、「デフォルト表領域割当て制限」フィールドの値として次の値を指定します。
UNLIMITED
6.4.2 MySQLでのプロビジョニング操作の実行に関するガイドライン
ここでは、プロビジョニング操作を実行する際に適用する必要があるガイドラインについて説明します。
-
プロビジョニング操作を実行する前に、参照定義がターゲット・システムの参照フィールドと同期している必要があります。つまり、プロビジョニング操作の前に、参照フィールド同期用のスケジュール済ジョブを実行してください。
-
Oracle Identity Governanceからプロビジョニングされるユーザー・アカウントのパスワードは、ターゲット・システムで設定されたパスワード・ポリシーに従う必要があります。
-
ターゲット・システム・フィールドの文字長を考慮に入れた上で、対応するOracle Identity Governanceフィールドの値を指定する必要があります。
-
パスワード更新のプロビジョニング操作時に、「パスワード」フィールド内の既存のテキストをクリアしてから、新しいパスワードを入力してください。
6.5 プロビジョニング操作の実行
「ユーザーの作成」ページを使用して、Identity Self Serviceに新規ユーザーを作成します。アカウントのプロビジョニングやリクエストは「ユーザーの詳細」ページの「アカウント」タブで実行します。
Oracle Identity Governanceでプロビジョニング操作を実行するには、次のようにします。
- Identity Self Serviceにログインします。
- 次のようにユーザーを作成します。
- Identity Self Serviceで、「管理」をクリックします。「ホーム」タブには、異なる「管理」オプションが表示されます。「ユーザー」をクリックします。「ユーザーの管理」ページが表示されます。
- 「アクション」メニューから「作成」を選択します。または、ツールバーにある「作成」をクリックします。「ユーザーの作成」ページが表示され、ユーザー・プロファイル属性の入力フィールドが表示されます。
- 「ユーザーの作成」ページに、ユーザーの詳細を入力します。
- 「アカウント」タブで、「アカウントのリクエスト」をクリックします
- 「カタログ」ページで、以前に構成したコネクタのアプリケーション・インスタンスを検索してカートに追加し、「チェックアウト」をクリックします。
- アプリケーション・フォームの各フィールドの値を指定し、「送信準備ができています」をクリックします
- 「送信」をクリックします。
関連項目:
「ユーザーの作成」ページ内のフィールドの詳細は、『Oracle Fusion Middleware Oracle Identity Governanceでのセルフ・サービス・タスクの実行』のユーザーの作成に関する項を参照してください6.6 コネクタのアンインストール
コネクタのアンインストールでは、リソース・オブジェクトに関連付けられているすべてのアカウント関連データを削除します。
なんらかの理由でコネクタをアンインストールする場合、コネクタのアンインストール・ユーティリティを実行します。このユーティリティを実行する前に、ConnectorUninstall.propertiesファイルでObjectType
およびObjectValues
プロパティに必ず値を設定してください。たとえば、リソース・オブジェクト、スケジュール済タスクおよびコネクタに関連付けられたスケジュール済ジョブを削除する場合、ObjectType
プロパティの値としてResourceObject、ScheduleTaskおよびScheduleJobを入力し、ObjectValues
プロパティの値としてコネクタに対応するセミコロン区切りのオブジェクト値のリスト(GoogleApps User; GoogleApps Groupなど)を入力します。
ノート:
ConnectorName
およびRelease
プロパティとともにObjectType
およびObjectValue
プロパティに値を設定している場合、ObjectValues
プロパティにリストされているオブジェクトの削除はユーティリティによって実行され、コネクタ情報はスキップされます。
詳細は、『Oracle Fusion Middleware Oracle Identity Governanceの管理』のコネクタのアンインストールに関する項を参照してください。