バックアップした監査ログを、別に定義した表にrdbsloaderコマンドまたはrdbsaloaderコマンドで格納して参照することができます。
別の表は、Symfoware/RDBで用意した定義文のひな型(表定義とビュー定義)を利用してrdbddlexコマンドを使用して定義します。
退避データを格納した後は、SQL文に必要な条件を指定してデータを検索することができます。
図10.3 監査ログを別の表に格納した場合の参照方法
rdbunladtコマンドでバックアップした監査ログは、以下の手順で参照します。
監査ログの格納先の表を定義します。
監査ログの格納先の表定義文のひな型を使用して、rdbddlexコマンドを実行します。以下に、表定義の手順を示します。
データベースの定義
任意の名前のデータベースを定義します。
データベーススペースの定義
任意の名前のデータベーススペースを定義します。スペースサイズは、格納する監査ログデータ量により見積もります。
なお、暗号化の指定(ENCRYPTION句)をしてデータベーススペースを定義することで、データベーススペースの盗難による監査ログデータの流出を防ぐことができます。
スキーマの定義
任意の名前のスキーマを定義します。
表およびビューの定義
表およびビューの定義は、以下に格納されているひな型を使用します。
/opt/FJSVrdb2b/demo/audittable_version1.ddl
ポイント
監査ログのビュー表AUDIT_SQL、AUDIT_SQLBIND、AUDIT_TRAIL_SESSIONおよびAUDIT_TRAIL_ACCESSが存在しない監査ログ表に対応する表およびビュー表のひな型定義文を使用する場合は、audittable.ddlを使用してください。
表のDSO/DSIの定義
任意の名前の表のDSO/DSIを定義します。DSO/DSIの定義は、下表の注意が必要です。
項目 | 指定内容 | |
---|---|---|
DSO定義 | 格納構造 | SEQUENTIAL型を指定します。 |
ページ長 | 32を指定します。 | |
分割条件 | 指定の有無は任意です。たとえば、以下のように監査ログ取得日時を範囲で指定します。 | |
DSI定義 | 分割値 | 分割条件の指定の有無により指定します。 |
割付けサイズ | DSIに格納する監査ログデータの量により見積もります。 |
インデックスのDSO/DSI定義
インデックスのDSO/DSI定義は、データの参照方法により任意です。たとえば、以下のインデックスを構成する列を定義します。
- 監査ログ取得時間をキーにした検索 ACCESS_TIME - 利用者名をキーにした検索 USER_NAME
監査ログデータの復号
監査ログデータの退避ファイルを市販の暗号化ツールなどで暗号化していた場合は、復号してください。
監査ログデータの格納
定義した格納先への監査ログデータの格納は、rdbsloaderコマンドを使用して行います。入力データの形式は、テキスト形式(tオプション)を指定します。
監査ログデータの参照
創成した監査ログデータを格納する表をSQL文で参照します。
監査ログデータを格納する操作を以下に示します。
$ rdbddlex /audit/ddl/db.ddl $ rdbddlex -d WORK_ADT /audit/ddl/audittable_version1.ddl $ rdbddlex -d WORK_ADT /audit/ddl/tbldsodsi.ddl $ rdbsloader -mi -v /audit/dsilist/dsi07 -t /audit/log/07/datetime0100-0522.dat /audit/log/07/datetime0522-1022.dat /audit/log/07/datetime1022-1522.dat ・ ・
db.ddlの内容(データベースからスキーマ定義)を以下に示します。
CREATE DATABASE WORK_ADT; CREATE DBSPACE ADTDBS07 ALLOCATE RAWDEVICE /dev_symfoware/raw43; CREATE SCHEMA ADT;
audittable_version1.ddlは表、ビュー表のひな型定義文です。
tbldsodsi.ddlの内容(表のDSO/DSIの定義)を以下に示します。
CREATE DSO ADTDSO FROM ADT.AUDIT TYPE SEQUENTIAL(PAGESIZE(32),ORDER(0)) WHERE (ACCESS_TIME) BETWEEN (?) AND (?); CREATE DSI ADTDSI0701 DSO ADTDSO USING (TIMESTAMP'2007-04-01 00:00:00', TIMESTAMP'2007-04-14 23:59:59') ALLOCATE DATA ON ADTDBS07 SIZE 2048M; CREATE DSI ADTDSI0702 DSO ADTDSO USING (TIMESTAMP'2007-04-15 00:00:00', TIMESTAMP'2007-04-30 23:59:59') ALLOCATE DATA ON ADTDBS07 SIZE 2048M;
dsi07の内容を以下に示します。
WORK_ADT.ADTDSI0701 WORK_ADT.ADTDSI0702