ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Adaptive Access Manager管理者ガイド
11gリリース1 (11.1.1)
E67347-01
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

I アーカイブおよびパージ手順の設定

アーカイブは、パージ・プロセス時に削除される古いデータをバックアップするプロセスです。アーカイブ・プロセス中に、メイン・トランザクション表のデータをバックアップ表に移動します。デフォルトでは、Oracle Adaptive Access Managerパージ・スクリプトは、パージ・プロセス中に削除されるデータをアーカイブします。

パージは、データベース内の空き容量を確保するか、システムで不要になった古いデータを削除するプロセスです。パージ・プロセスの基準には、データの存続期間またはデータの型を使用できます。

この章では、SQLスクリプトを使用してOAAMデータベースのデータをアーカイブおよびパージする方法について説明します。

Oracle Adaptive Access Managerデータベースのルーチン・メンテナンスおよびアーカイブとパージを実行するDBAまたはシステム管理者は、この章の手順を実行する必要があります。

この章の構成は、次のとおりです。

I.1 概要

アーカイブおよびパージ・プロセスを利用すると、ルールの評価や不正の調査で不要になったデータを解放できます。

「データのパージ」と「データのバックアップ」は異なります。データのバックアップは、データの損失が発生した場合にデータをリカバリすることを目的としています。これに対し、パージは実行時の表に古いデータが存在しないようにすることを目的としています。いずれの場合も、データを保護するには、データベース管理者と協力してデータベースのバックアップを定期的に実行する必要があります。

アーカイブIDM_ORACLE_HOME/oaam/oaam_db_scripts/oaam_db_purging_scripts.zipに用意されているスクリプトを使用して、次のデータをアーカイブまたはパージできます。

アーカイブおよびパージ基準は、レコードの作成/更新タイムスタンプに基づきます。これは、保存期間(日数)で指定します。

次に、アーカイブおよびパージ・プロセスの概要を示します。

  1. 保存期間(通常は180日、つまり6か月)を決定します。

  2. パージとアーカイブのどちらを行うかを指定します。

  3. パージ関連のストアド・プロシージャをOAAMデータベースにデプロイします。これはワンタイム・ジョブです。

  4. どのタイプのデータをアーカイブやパージの対象とするかを指定します。

  5. 関連スクリプトを定期的に実行するようにスケジュールしたり、必要なときに手動で実行します。

  6. データベース表V_SYS_LOGSLOG_TYPE99であるエンティティを確認します。

次のいくつかの項では、これらをさらに詳しく説明します。

I.2 データベースでのスクリプトの設定

OAAMデータのアーカイブやパージを行うには、ワンタイム・スクリプトを設定する必要があります。

  1. スクリプト・ディレクトリoaam_purge_scriptを作成します。

  2. スクリプト・アーカイブIDM_ORACLE_HOME/oaam/oaam_db_scripts/oaam_db_purging_scripts.zipをスクリプト・ディレクトリに解凍します。

  3. sysまたはsysdbaアカウントを使用してデータベースにログインします。

  4. ストアド・プロシージャを作成して実行できるよう、OAAMスキーマに次の権限を付与します。

    GRANT create any procedure TO <schema_name>;

    GRANT create any table TO <schema_name>;

    GRANT create any index TO <schema name>;

    GRANT create procedure TO <schema_name>;

    GRANT execute any procedure TO <schema_name>;

  5. OAAMユーザー名およびパスワードを使用してOAAMスキーマに接続します。例:

    sqlplus <oaam_db_user_name>/<oaam_db_password>

  6. create_purge_proc.sqlスクリプトを実行します。

    SQL> @oracle_db/create_purge_proc.sql

  7. ストアド・プロシージャを検証して、エラーがなく有効であること確認します。


注意:

パージ/アーカイブ・スクリプトには、パージ関連のストアド・プロシージャを作成および実行するCREATE Any権限が必要です。

パージ/アーカイブ・スクリプトで、指定の表に対してカスタム再作成索引ストアド・プロシージャを使用するため、このストアド・プロシージャでは、CREATE Any Table権限とCreate Any index権限がOracle Adaptive Access Managerスキーマに付与されている必要があります。これらの権限が付与されていない場合、rebuild_oaam_indexストアド・プロシージャは機能しません。

Oracle Adaptive Access Managerのパージ/アーカイブ・ルーチンを設定および実行するためにこれらの権限を付与し、パージ/アーカイブ・プロセスの完了後、それらを取り消す必要があります。


I.3 パージ・スクリプトを実行する際のベスト・プラクティス/ガイドライン

次に、パージ・スクリプトを実行する際のベスト・プラクティスを示します。

I.4 スクリプトの実行

アーカイブ・スクリプトやパージ・スクリプトを実行するには、次の手順を実行します。

  1. p_days1パラメータとp_archivedパラメータを設定します。どのスクリプトにも、これらの2つのパラメータを設定できます。表I-1で、これらのパラメータについて説明します。

    表I-1 アーカイブとパージのルーチン・パラメータ

    変数名 デフォルト値 説明

    p_days1

    180

    保存期間(日数)です。この日数を経過したデータがアーカイブまたはパージされます。

    p_archived

    Y

    YまたはNです(それぞれ、はいといいえを表します)。「Y」を指定した場合は、データは保存期間に基づいて(アーカイブ表に)アーカイブされ、それ以外の場合はパージされます。


  2. どのデータをアーカイブまたはパージするかに応じて、実行するスクリプトを選択します。表I-2に、データのタイプとそれぞれに対応するスクリプトの名前を示します。

    表I-2 データのタイプ別のアーカイブおよびパージ・スクリプト

    データのタイプ 対応するスクリプト

    ログイン、デバイス・データ

    exec_sp_purge_tracker_data.sql

    ルール、ポリシー・ログ・データ

    exec_sp_purge_rule_log.sql

    トランザクション、エンティティ・データ

    exec_sp_purge_txn_log.sql

    自動学習データ

    exec_sp_purge_workflow_data.sql

    プロファイル・データ

    exec_sp_purge_profile_data.sql

    ケース関連データ

    exec_sp_purge_case_data.sql

    モニター・データ

    exec_v_monitor_purge_proc.sql


  3. OAAMデータベース・ユーザー名およびパスワードを使用してOAAMデータベースにログインし、選択したスクリプトを実行します。

  4. 対応するログ・ファイルをチェックして、エラーや警告が発生していないか確認します。

  5. アーカイブを行う場合は、アーカイブ表のバックアップを作成し、必要に応じてデータをリストアできるようにします。

安全なデバイスの登録

OAAMパージ/アーカイブ・プロセスでは、安全なデバイスの登録は解除されないため、デバイスの使用期間が6か月に満たない場合を除き、安全なデバイスを手動で再登録する必要があります。

パージ・スクリプトを使用すると、デバイスがtracker_purge_job.sqlの一環としてパージされたときに、そのデバイスは登録解除されます。tracker_purge_job.sqlの一環として、使用されていないデバイス(VCRYPT_TRACKER_USERNODE_LOGSのレコードによって参照されていないデバイス)がすべてパージされ、VT_USER_DEVICE_MAPの関連レコードもパージされます。

自動化スケジュール

アーカイブとパージのジョブは、ルーチン・スケジュールの一環になります。これらのジョブは、データベース・ジョブまたはOSベースのスケジュール・ユーティリティ(crontabat)またはスケジューラ・ソフトウェア(autosysappworx)を使用してスケジュールできます。

これらのスクリプトは、定期的に、およびピーク時以外に実行するようにスケジュールすることをお薦めします。

I.5 アーカイブおよびパージの検証

アーカイブおよびパージが成功したかどうかを判断するには、ログ・ファイル(スケジューラ・ログ、スクリプト出力ログなど)でエラーがないかどうかを確認します。アーカイブとパージ・プロセスが完了すると、ユーザーは、トランザクション・ログとその関連パージ済表に問い合せて、データがアーカイブおよびパージされたことを検証することもできます。

I.6 アーカイブ済データのリストア

お薦めしたように、ユーザーは、今後トラブルシューティングの実行が必要な場合に備えて、アーカイブ・プロセスの完了後にアーカイブ済表のエクスポート・バックアップを取る必要があります。

リストアを実行する場合、ユーザーは、Oracleのデータベース・インポート機能を使用して、目的の日付のデータを一時表にリストアする必要があります。

データのリストアが必要な場合は、Oracleサポート・サービスに連絡してください。

I.7 パーティション・メンテナンス・スクリプトの実行

パーティション化されたOAAMデータベース・バージョンを使用している場合は、パーティションを削除するための関連スクリプトが用意されています。

I.7.1 週次パーティションの削除

週次パーティションを削除するには、次の手順を実行します。

  1. このスクリプトをデータベースの作成日から2週間ごとに実行します。

  2. デフォルトの保存期間を変更するには、スクリプトDrop_Weekly_Partition_tables.sqlを開き、保存期間を日数で設定します。デフォルトでは、15日(2週間)に設定されます。

  3. OAAMデータベース・ユーザー名およびパスワードを使用してOAAMデータベースにログインします。

  4. スクリプトDrop_Weekly_Partition_tables.sqlを実行します。

I.7.2 月次パーティションの削除

月次パーティションを削除するには、次の手順を実行します。

  1. このスクリプトを毎月末に実行し、6か月が経過したパーティションを削除します。

  2. デフォルトの保存期間を変更するには、スクリプトDrop_Monthly_Partition_tables.sqlを開き、保存期間を日数で設定します。デフォルトでは、180日(6か月)に設定されます。

  3. OAAMデータベース・ユーザー名およびパスワードを使用してOAAMデータベースにログインします。

  4. スクリプトDrop_Monthly_Partition_tables.sqlを実行します。

I.8 アーカイブおよびパージの対象となるデータの詳細

次の各項では、パージ対象となる各データとそれぞれに対応するアーカイブ表の詳細を示します。

I.8.1 ログインおよびデバイス・データ

表I-3 ログインおよびデバイス

ログインおよびデバイスの表 対応するアーカイブ表

VCRYPT_TRACKER_NODE

VCRYPT_TRACKER_NODE_PURGE

VCRYPT_TRACKER_NODE_HISTORY

VCRYPT_TRACKER_NODE_HISTORY_PURGE

VCRYPT_TRACKER_USERNODE_LOGS

VCRYPT_TRACKER_USERNODE_LOGS_PURGE

VT_DYN_ACT_EXEC_LOG

VT_DYN_ACT_EXEC_LOG_PURGE

VT_SESSION_ACTION_MAP

VT_SESSION_ACTION_MAP_PURGE

VT_USER_DEVICE_MAP

VT_USER_DEVICE_MAP_PURGE



注意:

VT_SESSION_ACTION_MAP表は、パーティション削除管理スクリプトを使用してパージされません。この表には、デバイス・フィンガープリント・セッションの情報が格納されているため、この表をパージするには、exec_sp_purge_tracker_data.sqlスクリプトによりコールされる手動パージ・ストアド・プロシージャ(SP_SESS_ACT_MAP_PROC)を使用します。


I.8.2 ルールおよびポリシー・ログ・データ

表I-4 ルールおよびポリシー・ログ・データの表

ルール、ポリシー・ログの表 対応するアーカイブ表

VR_POLICYSET_LOGS

VR_POLICYSET_LOGS_PURGE

VR_RULE_LOGS

VR_RULE_LOGS_PURGE

VR_MODEL_LOGS

VR_MODEL_LOGS_PURGE

VR_POLICY_LOGS

VR_POLICY_LOGS_PURGE


I.8.3 トランザクションおよびエンティティ・データ

表I-5 トランザクションおよびエンティティ・データの表

トランザクション表 対応するアーカイブ表

VT_ENTITY_ONE

VT_ENTITY_ONE_PURGE

VT_ENTITY_ONE_PROFILE

VT_ENTITY_ONE_PROFILE_PURGE

VT_USER_ENTITY1_MAP

VT_USER_ENTITY1_MAP_PURGE

VT_ENT_TRX_MAP

VT_ENT_TRX_MAP_PURGE

VT_TRX_DATA

VT_TRX_DATA_PURGE

VT_TRX_LOGS

VT_TRX_LOGS_PURGE


I.8.4 自動学習データ

表I-6 自動学習データの表

自動学習トランザクション表 対応するアーカイブ表

VT_WF_DAYS

VT_WF_DAYS_PURGE

VT_WF_HOURS

VT_WF_HOURS_PURGE

VT_WF_MONTHS

VT_WF_MONTHS_PURGE

VT_WF_YEARS

VT_WF_YEARS_PURGE

V_FPRINTS

V_FPRINTS_PURGE

V_FP_MAP

V_FP_MAP_PURGE


I.8.5 プロファイル・データ

表I-7 プロファイル・データの表

トランザクション表 対応するアーカイブ表

VT_USER_PROFILE

VT_USER_PROFILE_PURGE

VT_DEVICE_PROFILE

VT_DEVICE_PROFILE_PURGE

VT_BASE_IP_PROFILE

VT_BASE_IP_PROFILE_PURGE

VT_IP_PROFILE

VT_IP_PROFILE_PURGE

VT_STATE_PROFILE

VT_STATE_PROFILE_PURGE

VT_CITY_PROFILE

VT_CITY_PROFILE_PURGE

VT_COUNTRY_PROFILE

VT_COUNTRY_PROFILE_PURGE


I.8.6 ケース関連データ

表I-8 ケース関連データの表

トランザクション表 対応するアーカイブ表

V_CASE

V_CASE_PURGE

V_CASE_HIST

V_CASE_HIST _PURGE

V_ACTION_LOG_SESS_MAP

V_ACTION_LOG_SESS_MAP_PURGE

V_ACTION_LOG_SESS

V_ACTION_LOG_SESS

V_CASE_MAP

V_CASE_MAP_PURGE

V_CASE_MAP_HIST

V_CASE_MAP_HIST_PURGE


I.8.7 監視データ

表I-9 監視データの表

トランザクション表 対応するアーカイブ表

V_MONITOR_DATA

V_MONITOR_DATA_PURGE


I.9 アーカイブおよびパージの基準

次の表に、アーカイブおよびパージの基準を示します。

表I-10 アーカイブおよびパージの基準

データのタイプ パージ基準

デバイスのフィンガープリント・データ

パージ・プロセスでは、次の基準に基づいてデバイス・フィンガープリント・データがアーカイブおよびパージされます。

  • 最初に、指定した期間を経過したデバイス・フィンガープリント・ログ

  • デバイス・フィンガープリント・ログからのデータの後に使用されていないユーザー・デバイス・マップ

  • デバイス・フィンガープリント・ログからのデータの後に使用されていないデバイス履歴

  • デバイス・フィンガープリント・ログからのデータの後に使用されていないデバイス・データ

トランザクションのセッション内ベースのデータ

パージ・プロセスでは、次の基準に基づいてセッション内トランザクション・データがアーカイブおよびパージされます。

  • 最初に、指定した期間を経過したセッション内トランザクション・ベースのデータ

  • トランザクション・ログのパージ後のトランザクション・データで特定の期間使用されていないトランザクション・データ

  • トランザクション・ログのパージ後の特定の期間のエンティティ、エンティティ・プロファイル、ユーザー・エンティティ・マップおよびエンティティ・トランザクション・マップ

自動学習プロファイル・データ

特定の期間に基づいて、次の表をアーカイブおよびパージします。

  • HOURSベースの表には、3日分のデータが保存されます。

  • DAYSベースの表には、32日分のデータが保存されます。

  • MONTHSベースの表には、1年分のデータが保存されます。

  • YEARSベースの表には、5年分のデータが保存されます。

フィンガープリント・タイプがAUTHおよびTRANSACTIONのフィンガープリント・データをアーカイブおよびパージします。この方法でパージするフィンガープリント・データは、フィンガープリント表およびfp_map表内にあります。前述のHOURS表、DAYS表、MONTHS表およびYEARS表にも、フィンガープリントへの参照が含まれます。フィンガープリント・データをパージする前に、HOURS表、DAYS表、MONTHS表およびYEARS表のアーカイブおよびパージが実行されていることを確認してください。

vcrypt.fingerprint.type.enum.autolearning.auth=11
vcrypt.fingerprint.type.enum.autolearning.transaction=12

11は、自動学習タイプAUTHに対応する列挙値です。統合中に別の値が使用された場合は、スクリプト内のこれらの値を変更してください。

12は、自動学習タイプTRANSACTIONに対応する列挙値です。統合中に別の値が使用された場合は、スクリプト内のこれらの値を変更してください。

ルール・ログ・データ

30日経過したルール・ログ・トランザクション・データは、アーカイブおよびパージされます。

この保存値は、カスタマ・ケア要件に基づき設定する必要があります。レポート・データベースを使用する場合、ルール・ロギング・データの保存は30日未満にする必要があります。

安全なデバイスの登録

OAAMパージ/アーカイブ・プロセスでは、安全なデバイスの登録は解除されないため、デバイスの使用期間が6か月に満たない場合を除き、安全なデバイスを手動で再登録する必要があります。

デバイスが(tracker_purge_job.sqlの一部として)パージされた場合、パージ・スクリプトによりデバイスが登録解除されます。tracker_purge_job.sqlの一環として、使用されていないデバイス(VCRYPT_TRACKER_USERNODE_LOGSのレコードによって参照されていないデバイス)がすべてパージされ、VT_USER_DEVICE_MAPの関連レコードもパージされます。


I.9.1 最小データ保存ポリシー

Oracle Adaptive Access Managerのシステム要件に基づいて、各種OLTP表の最小データ保存ポリシーを次に示します。ただし、ユーザーは各自のビジネス要件に基づいてデータ保存期間を決定する必要があります。詳細は、この章の情報を参照してください。

I.9.1.1 デバイス・フィンガープリント処理データ

6か月(180日)以上

I.9.1.2 セッション内トランザクション表

6か月(180日)以上

I.9.1.3 自動学習表およびワークフロー表

  • HOURSベースのワークフロー表には、3日分のデータが保存されます。

  • DAYSベースのワークフロー表には、32日分のデータが保存されます。

  • MONTHSベースのワークフロー表には、1年分のデータが保存されます。

  • YEARSベースのワークフロー表には、5年分のデータが保存されます。

I.9.1.4 ルール・ログ・データ

スクリプトにより、30日を経過したすべてのルール・ログ・データがアーカイブおよびパージされます(この値は、カスタマ・ケア要件に基づいて設定する必要があります)。レポート・データベースを使用する場合、ルール・ロギング・データの保存は30日未満にする必要があります。

I.10 関連ストアド・プロシージャのリスト

この項では、Oracle Databaseのアーカイブおよびパージ設定スクリプトを示します。

I.10.1 create_purge_proc.sql

create_purge_proc.sqlスクリプトでは、次のストアド・プロシージャが作成され、トランザクション表のデータがアーカイブおよびパージされます。

  • SP_RULE_ PROC

  • SP_MODEL_ PROC

  • SP_POLICYSET_ PROC

  • SP_POLICY_ PROC

  • SP_NODE_HISTORY_ PROC

  • SP_NODE_PROC

  • SP_USER_NODE_PROC

  • SP_USER_DVC_PROC

  • SP_SESS_ACT_MAP_PROC

  • SP_WF_YEARS_PROC

  • SP_WF_MONTHS_PROC

  • SP_WF_DAYS_PROC

  • SP_WF_HOURS_PROC

  • SP_V_FPRINTS_PROC

  • SP_V_FP_MAP_PROC

  • SP_VT_DY_ACT_EX_LOG_PRO

  • SP_VT_TRX_LOGS_PROC

  • SP_VT_TRX_DATA_PROC

  • SP_VT_ENT_TRX_MAP_PROC

  • SP_VT_ENT_ONE_PRF_PROC

  • SP_VT_ENT_ONE_PROC

  • SP_VT_ENT_ONE_MAP_PROC

  • SP_VT_USER_PRF_PROC

  • SP_VT_DEVICE_PRF_PROC

  • SP_VT_IP_PRF_PROC

  • SP_VT_BASE_IP_PRF_PROC

  • SP_VT_CITY_PRF_PROC

  • SP_VT_COUNTRY_PRF_PROC

  • SP_VT_STATE_PRF_PROC

I.10.2 create_case_purge_proc.sql

create_case_purge_proc.sqlスクリプトでは、次のストアド・プロシージャが作成され、トランザクション表のデータがアーカイブおよびパージされます。

  • SP_V_CASE_PROC

  • SP_V_CASE_HIST_PROC

  • SP_V_CASE_MAP_PROC

  • SP_V_CASE_MAP_HIST_PROC

  • SP_V_ACTION_LOG_SESS_MAP_PROC

  • SP_V_ACTION_LOG_SESS_PROC

I.10.3 create_v_monitor_purge_proc.sql

create_v_monitor_purge_proc.sqlスクリプトでは、ストアド・プロシージャSP_V_MON_DATA_PURGE_PROCが作成され、トランザクション表のデータがアーカイブおよびパージされます。