この章では、タスク・アーカイブ・ユーティリティの使用方法について説明します。内容は次のとおりです。
Oracle Identity Managerでは、タスクはリソースのプロビジョニングを処理するプロセスを構成する1つ以上のアクティビティを意味します。たとえば、リソースへのアクセスを要求するプロセスには、複数の承認タスクおよびプロビジョニング・タスクが含まれます。Oracle Identity Managerでは、アクティブ・タスク表と呼ばれる次の表にタスク・データを格納します。
OSI
OSH
SCH
Oracle Identity Managerのデフォルトでは、完了したタスクはアクティブ・タスク表から削除されません。アクティブ・タスク表のサイズが大きくなるにつれて、特にオープン・タスクの管理および承認の保留時に、パフォーマンスが低下する可能性があります。タスクが正常に実行されたら、タスク・アーカイブ・ユーティリティを使用し、タスク・データをアーカイブしてアクティブ・タスク表から削除できます。タスク・アーカイブ・ユーティリティでタスク・データをアーカイブすると、パフォーマンスが改善され、データを安全に格納できます。
タスク・アーカイブ・ユーティリティは、アーカイブされたタスク・データを次のアーカイブ・タスク表に格納します。これらの表の構造は、アクティブ・タスク表と同じです。
ARCH_OSI
ARCH_OSH
ARCH_SCH
タスク・アーカイブ・ユーティリティを使用すると、次のタイプのタスクをアーカイブできます。
無効化または削除されたユーザーの失効になったリソース・インスタンスに対するプロビジョニング・タスク
失効になったリソース・インスタンスに対するプロビジョニング・タスク
「リクエスト完了」、「リクエストが取り消されました」、または「オブジェクトの承認完了」のリクエスト・ステータスを持つ承認タスク
タスク・アーカイブ・ユーティリティを使用してタスクをアーカイブする場合、アーカイブ前に、アーカイブ操作のタイプ、ユーザー・ステータス、タスク実行日および索引を削除するレコード数を指定できます。アーカイブ操作はアーカイブするタスク・データのタイプを示し、ユーザー・ステータスは削除、無効化またはその両方を行ったユーザーに関するデータをアーカイブするかどうかを決定します。タスク実行日はタスクを実行する日を示し、YYYYMMDD
書式である必要があります。
指定したタスク実行日まで、実行されるすべてのタスクがアーカイブされます。アーカイブ・プロセスにかかる時間を短縮するために、アーカイブされるレコード数が200000を超えると、ユーティリティによりすべてのアクティブ・タスク表の索引が削除されます。アーカイブ・データがアクティブ・タスク表から削除された後に、索引は再作成されます。200000という値は必要な値に変更できます。OIM_TasksArch.bat
ファイルまたはOIM_TasksArch.sh
ファイルのコードの次の行で値を変更できます。
.batファイルの場合、set INDXRESP=200000
.shファイルの場合、indxopt=200000
Oracle Database版のタスク・アーカイブ・ユーティリティを構成するファイルは、次のディレクトリにあります。
OIM_HOME/xellerate/Database/Oracle/Utilities/TaskArchival
Microsoft SQL Server版のタスク・アーカイブ・ユーティリティを構成するファイルは、次のディレクトリにあります。
OIM_HOME/xellerate/Database/SQLServer/Utilities/TaskArchival
注意: アクティブ・タスク表からアーカイブ・タスク表にアーカイブされたデータは、Oracle Identity Managerから使用できなくなります。このデータにアクセスするには、Oracle Identity Managerデータベースのアーカイブ・タスク表を問い合せる必要があります。 |
タスク・アーカイブ・ユーティリティをOracle Databaseとともに使用するには、次の手順を実行する必要があります。
SQL*Plusを起動し、Oracle DatabaseにSYS
ユーザーとして接続します。
次のコマンドを入力して、アーカイブ・タスク表用に別の表領域を作成します。DATA_DIRを、データファイルを格納するディレクトリで置き換え、必要に応じてサイズなどのパラメータを環境に合せて調整します。
CREATE TABLESPACE TasksArch
DATAFILE 'DATA_DIR\tasksarch_01.dbf' SIZE 1000M REUSE
EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
注意: 大量のデータをアーカイブする際は、大きなサイズのUNDO表領域を割り当てることをお薦めします。また、初期化パラメータparallel_max_servers およびparallel_min_servers を構成して、パラレル実行を有効にしてください。パラレル実行は、アーカイブ・プロセスのパフォーマンスの向上に役立ちます。 |
Oracle Identity Managerデータベース・ユーザーとしてOracle Databaseに接続します。
9.1.0より前のリリースのOracle Identity Managerでタスク・アーカイブ・ユーティリティを実行する場合は、次のコマンドを実行します。このコマンドにより、ORC_TASKS_ARCHIVED列がORC表に追加されます。タスク・アーカイブ・ユーティリティはこの列の値を1
に更新します。これは特定のプロセスのインスタンスに関するタスクがアーカイブされることを示します。
ALTER TABLE ORC ADD(ORC_TASKS_ARCHIVED VARCHAR2(1))
次のコマンドを入力してcr_taskarchival_ddl_table.sql
スクリプトを実行し、OIM_TASK_ARCH_DDL
という表を作成します。この表は、タスク・アーカイブ・ユーティリティで使用されます。
@ path/cr_taskarchival_ddl_table.sql
次のコマンドを入力してCreate_TasksArch_Tables.sql
スクリプトを実行し、アーカイブ・タスク表を作成します。
@ path/Create_TasksArch_Tables.sql
次のコマンドを入力してOIM_SP_TASKS_ARCHIVAL.sql
スクリプトを実行し、タスク・アーカイブ・ユーティリティでタスク・データをアーカイブおよび削除するために使用するストアド・プロシージャを作成します。
@ path/OIM_SP_TASKS_ARCHIVAL.sql
Oracle DatabaseインスタンスがARCHIVELOG
モードで実行されている場合、タスク・アーカイブ・ユーティリティを実行する前に、NOARCHIVELOG
モードに切り替える必要があります。データベースのアーカイブ・モードの変更方法は、『Oracle Database管理者ガイド』を参照してください。
タスク・アーカイブ・ユーティリティをMicrosoft SQL Serverとともに使用するには、次の手順を実行する必要があります。
カスタム索引をOSI、SCHまたはOSH表に追加した場合、path
/Create_TasksArch_Indexes.sql
ファイルにもそれらを追加する必要があります。
SQL Query Analyzerを起動し、sysadminのメンバーであるユーザーか、dbcreatorサーバー・ロールまたはdb_ownerデータベース・ロールを持つユーザーとして、SQL Serverに接続します。
次のコマンドを入力します。DATA_DIRを、データファイルを格納するディレクトリで置き換え、必要に応じてSIZE
、MAXSIZE
およびFILEGROWTH
の各パラメータを環境に合せて調整します。これらのコマンドにより、タスク・アーカイブ・ユーティリティでアーカイブ・タスク表からデータを格納するために使用するOIM_ARCH_TASKS
ファイル・グループが作成されます。
USE master GO ALTER DATABASE oim_database_name ADD FILEGROUP OIM_ARCH_TASKS GO ALTER DATABASE oim_database_name ADD FILE (NAME = OIM_ARCH_TASKS, FILENAME = 'DATA_DIR\OIM_ARCH_TASKS.NDF', SIZE = 1000MB, MAXSIZE = 5000MB, FILEGROWTH = 25MB) TO FILEGROUP OIM_ARCH_TASKS GO
SQL Serverから切断して、Oracle Identity Managerデータベース・ユーザーとして再接続します。
9.1.0より前のリリースのOracle Identity Managerでタスク・アーカイブ・ユーティリティを実行する場合は、次のコマンドを実行します。このコマンドにより、ORC_TASKS_ARCHIVED
列がORC表に追加されます。タスク・アーカイブ・ユーティリティはこの列の値を1
に更新します。これは特定のプロセスのインスタンスに関するタスクがアーカイブされることを示します。
ALTER TABLE ORC ADD ORC_TASKS_ARCHIVED VARCHAR(1)
path
/Create_TasksArch_Tables.sql
スクリプトをロードして実行し、アーカイブ・タスク表を作成します。
path
/OIM_SP_TASKS_ARCHIVAL.sql
スクリプトをロードして実行し、タスク・アーカイブ・ユーティリティでタスク・データをアーカイブおよび削除するために使用するストアド・プロシージャを作成します。
次の手順を実行して、タスク・アーカイブ・ユーティリティを実行します。
Oracle Identity Managerデータベースにアクセスでき、リコンシリエーション・プロセスが実行されていないことを確認します。また、Oracle Identity Managerデータベースが他のセッションのトランザクションに対してオープンされていないことを確認します。
注意: タスク・アーカイブ・ユーティリティは、オフピーク時間帯に実行することをお薦めします。 |
OSI表、SCH表およびOSH表をバックアップします。
使用しているアプリケーション・サーバーに対応したOracle Identity Managerのインストレーション・ガイドの手順に従って、Oracle Identity Managerを停止します。
Microsoft Windowsプラットフォームでは、短い日付書式をdddd M/d/yyyy
として指定する必要があります。また、時間書式をH:mm:ss
として指定する必要があります。日付書式および時間書式をカスタマイズするには、「コントロール パネル」で「地域と言語のオプション」コマンドを選択します。
注意: 日付書式および時間書式を変更すると、Microsoft Windowsプラット・フォームで実行中のすべてのアプリケーションに影響します。 |
LinuxおよびUNIXプラットフォームでは、path
/OIM_TasksArch.sh
ファイルを実行します。Microsoft Windowsプラットフォームでは、path
\OIM_TasksArch.bat
ファイルを実行します。
Oracle Databaseインストール環境で、求められた場合には次のパラメータの値を入力します。
Oracleホーム・ディレクトリ
Oracle Identity Managerデータベース名またはOracle Identity Managerデータベースがリモート・コンピュータで稼働している場合はTNS文字列
Oracle Identity Managerデータベース・ユーザー名およびパスワード
Microsoft SQL Serverインストール環境で、求められた場合には次のパラメータの値を入力します。
SQL Serverデータベースが稼働しているサーバー名
Oracle Identity Managerデータベース名
Oracle Identity Managerデータベース・ユーザー名およびパスワード
求められた場合には、次のオプションのいずれかを選択します。
無効化または削除されたユーザーの失効になったリソース・インスタンスに対するプロビジョニング・タスクをすべてアーカイブします。
失効になったリソース・インスタンスに対するプロビジョニング・タスクをすべてアーカイブします。
リクエスト・ステータスが「リクエスト完了」、「リクエストが取り消されました」、または「オブジェクトの承認完了」である承認タスクをすべてアーカイブします。
終了する。
無効化または削除されたユーザーの失効になったリソース・インスタンスに対するプロビジョニング・タスクをすべてアーカイブする場合、次のいずれかのオプションを選択します。
ステータスが「削除」であるユーザー
ステータスが「無効」であるユーザー
ステータスが「削除」および「無効」であるユーザー
メイン・メニューに戻る。
入力を求められたら、YYYYMMDDという書式でタスク実行日を入力します。指定したタスク実行日まで、実行されるすべてのタスクがアーカイブされます。現在の日付以前に実行されたすべてのタスクをアーカイブするには、日付を入力せずに[Enter]キーを押します。
タスクをアーカイブするには、入力を求められたときにyまたはYの値を入力します。または、nまたはNを入力して、ユーティリティを終了します。
注意: 入力を求められたときに、YまたはNの値を入力する必要があります。値を選択しないで[Enter]キーを押すと、ユーティリティでは再度アーカイブされるタスク数が計算され、アーカイブを開始せずに確認が求められます。 |
Microsoft Windowsプラットフォームでは、タスク・アーカイブ・ユーティリティの実行完了後に、短い日付書式を地域またはロケールの日付書式に再設定します。「コントロール パネル」で「地域と言語のオプション」コマンドを使用して日付書式を再設定します。
注意: アクティブ・タスク表からデータが削除されるため、更新される統計用にアクティブ・タスク表およびその索引を分析する必要があります。Oracle Identity ManagerのデータベースとしてOracle Databaseを使用している場合のみ、この手順を実行してください。 |
表11-1に、タスク・アーカイブ・ユーティリティによって生成される出力ファイルを示します。
表11-1 タスク・アーカイブ・ユーティリティにより生成される出力ファイル
ファイル | 説明 |
---|---|
|
ユーティリティが指定された資格証明を使用してデータベースに接続できなかった場合に生成されます。 |
|
アーカイブ・プロセスまたは削除プロセスが失敗した場合に生成されます。 |
|
アーカイブ・プロセスまたは削除プロセスが成功した場合に生成されます。 |
注意: ユーティリティを再度実行するときに、これらのエラー・ログ・ファイルは削除されます。 |