9.2.1 セキュリティ監査機能とは
(1) 機能概要
HiRDBのセキュリティは権限によって守られています。参照できる情報,更新できる情報,及び操作できるオブジェクト(表,インデクスなど)を権限によって制限しています。この権限の運用が適切に行われているかどうかをチェックするために,HiRDBではデータベースに対する各種操作を記録できます。この機能をセキュリティ監査機能といい,出力される操作記録を監査証跡といいます。出力された監査証跡を調査して不正なアクセスが行われていないかをチェックできます。このチェックは監査権限を持つユーザ(これを監査人といいます)が行います。セキュリティ監査機能の概要を次の図に示します。
監査証跡には,だれがどのような権限を使用して何に対する操作を行ったかという情報が取得されます。どの操作に対して監査証跡を取得するかは,監査人がCREATE AUDIT文で設定します。監査証跡の取得対象となる操作が実行されると,監査証跡が取得されます。
監査人は,監査証跡表を管理及び操作する主監査人と,監査証跡表を操作する副監査人の2種類があります。
主監査人はシステム内に1人,副監査人はシステム内に複数人登録できます。
- 参考
-
-
セキュリティ監査機能はセキュリティを強化する機能ではありません。権限の運用が適切に行われているかどうかをチェックするための操作記録を出力する機能です。
-
JP1/NETM/Auditと連携して,JP1/NETM/AuditでHiRDBの監査証跡を収集・一元管理できます。詳細は,「JP1/NETM/Audit」を参照してください。
-
(2) 監査証跡の取得契機
HiRDBが監査証跡を取得する契機を次に示します。
-
コマンド又はSQL文を実行するときの権限チェック時
-
各イベントの終了時
SQLの構文エラー時,及びコマンドの入力ミスによるエラー時は監査証跡を取得しません。
監査証跡の取得契機の詳細については,マニュアル「HiRDB システム運用ガイド」を参照してください。
(3) 監査証跡の取得例
監査証跡の取得例を次に示します。
- (例1)表を検索した場合の監査証跡の取得例
-
表を検索した場合,表のアクセス権限(SELECT権限)を使用するため,監査証跡が取得されます。
表の検索内容 (SQLの指定) |
監査証跡の内容 |
|||||
---|---|---|---|---|---|---|
実行者 |
使用した権限 |
操作対象の オブジェクト 種別 |
操作対象のオブジェクト名 |
操作種別 |
||
ユーザ(USR1)が次のSELECT文を発行した場合 SELECT C1 FROM USR1.T1 |
権限 |
USR1 |
表のアクセス権限(SELECT権限) |
表 |
USR1.T1 |
表へのアクセス(SELECT) |
終了 |
USR1 |
− |
表 |
USR1.T1 |
表へのアクセス(SELECT) |
|
ユーザ(USR2)が次のSELECT文を発行した場合 SELECT T1.C1,T2.C1 FROM USR1.T1 T1,USR2.T2 T2 WHERE T1.C1=T2.C1 |
権限 |
USR2 |
表のアクセス権限(SELECT権限) |
表 |
USR1.T1 |
表へのアクセス(SELECT) |
USR2 |
表のアクセス権限(SELECT権限) |
表 |
USR2.T2 |
表へのアクセス(SELECT) |
||
終了 |
USR2 |
− |
表 |
USR1.T1 |
表へのアクセス(SELECT) |
|
USR2 |
− |
表 |
USR2.T2 |
表へのアクセス(SELECT) |
- (凡例)
-
権限:権限チェック時に取得される監査証跡
終了:イベント終了時に取得される監査証跡
−:該当しません。
- (例2)表を定義又は削除した場合の監査証跡の取得例
-
表を定義又は削除した場合,スキーマ所有者の権限,表の所有者の権限,及びRDエリア利用権限を使用するため,監査証跡が取得されます。
表の検索内容 (SQLの指定) |
監査証跡の内容 |
|||||
---|---|---|---|---|---|---|
実行者 |
使用した権限 |
操作対象の オブジェクト種別 |
操作対象のオブジェクト名 |
操作種別 |
||
ユーザ(USR1)が次のCREATE TABLEを発行した場合 CREATE TABLE T1(C1 INT) IN RDAREA1 |
権限 |
USR1 |
RDエリア利用権限 |
RDエリア |
RDAREA1 |
定義作成 |
USR1 |
所有者 |
スキーマ |
USR1 |
定義作成 |
||
USR1 |
所有者 |
表 |
USR1.T1 |
定義作成 |
||
終了 |
USR1 |
− |
表 |
USR1.T1 |
定義作成 |
|
ユーザ(USR2)が次のDROP TABLEを発行した場合 DROP TABLE T1 |
権限 |
USR2 |
所有者 |
表 |
USR2.T1 |
定義削除 |
終了 |
USR2 |
− |
表 |
USR2.T1 |
定義削除 |
- (凡例)
-
権限:権限チェック時に取得される監査証跡
終了:イベント終了時に取得される監査証跡
−:該当しません。
(4) 監査証跡として取得する情報
監査証跡として取得する情報を次の表に示します。
取得する情報 |
説明 |
---|---|
ユーザ識別子 |
監査対象のイベント実行者の認可識別子 |
イベント実行日 |
イベントを実行した年月日 |
イベント実行時刻 |
イベントを実行した時刻 |
イベント実行時刻 |
イベントを実行した時刻(単位:マイクロ秒) |
イベントタイプ |
イベントタイプ |
イベントサブタイプ |
イベントサブタイプ |
イベント成否 |
イベントの実行結果(権限のチェックが成功したかどうかを出力します) |
使用した権限 |
イベントを実行したときに使用した権限 |
UAP名称 |
クライアント環境定義のPDCLTAPNAMEオペランドに指定したUAP名称 |
サービス名 |
イベント発行元のUAPが要求したサービス名 OpenTP1のSUP(サービス利用プログラム)がSPP(サービス提供プログラム)に要求したサービスの場合,又はTP1/Message ControlがMHP(メッセージ処理プログラム)に要求したサービスの場合は,該当するサービス名称 |
IPアドレス |
イベント発行元UAPを実行したクライアントのIPアドレス※ |
プロセス番号 |
イベント発行元UAPのプロセスID※ |
スレッド番号 |
イベント発行元UAPのスレッドID※ |
ホスト名 |
イベント発行元UAPの接続先ホスト名 |
ユニット識別子 |
イベント発行元UAPの接続先ユニット識別子 |
サーバ名 |
イベント発行元UAPの接続先フロントエンドサーバ名,又はシングルサーバ名 |
コネクト通番 |
イベント発行者のコネクト通番 |
SQL通番 |
イベントのSQL通番 |
オブジェクトの所有者名 |
イベントの権限チェックの対象になるオブジェクトの所有者名 |
オブジェクト名 |
イベントの権限チェックの対象になるオブジェクト名 |
オブジェクトの種別 |
イベントの権限チェックの対象になるオブジェクトの種別 |
付与,削除,又は変更した権限 |
イベントによって付与,削除,又は変更した権限 |
権限を付与,削除,又は変更されたユーザ識別子とイベント対象のユーザ識別子 |
イベントによって権限を付与,削除,又は変更されたユーザの識別子とイベント対象になった認可識別子 |
セキュリティ監査機能に関するオペランドの値 |
セキュリティ監査機能に関するオペランドの値(HiRDB開始時の値) |
監査証跡種別 |
権限チェックか,又はイベント終了かを示す種別 |
SQLコード又は終了コード |
SQL,ユティリティ,コマンド終了時のコード |
スワップ元の監査証跡ファイル名 |
スワップ発生時のスワップ元の監査証跡ファイル名 |
スワップ先の監査証跡ファイル名 |
スワップ発生時のスワップ先の監査証跡ファイル名 |
CONNECT関連セキュリティ機能の設定変更種別 |
CONNECT関連セキュリティ機能の設定変更種別(パスワードの変更時にも変更種別が設定されます) |
CONNECT関連セキュリティ機能に関するオペランドの値(変更前) |
変更前のCONNECT関連セキュリティ機能に関するオペランドの値 |
CONNECT関連セキュリティ機能に関するオペランドの値(変更後) |
変更後のCONNECT関連セキュリティ機能に関するオペランドの値 |
監査証跡表オプション |
イベントの操作対象が監査証跡表,監査証跡表を基表としたビュー表,又は監査証跡表を基表としたリストの場合のフラグ |
アクセス件数 |
イベントによってオブジェクト(実表,ビュー表,及びリスト)に対して検索,挿入,更新,及び削除をした行数 |
SQL文 |
実行したSQL文 |
SQLデータ |
実行したSQLのデータ |
ユーザ付加情報1 |
ユーザが任意に設定する付加情報 |
ユーザ付加情報2 |
|
ユーザ付加情報3 |
|
関連製品付加情報1 |
Cosminexusが設定する付加情報 |
- 注
-
イベントによって取得する情報が異なります。イベントごとに取得する情報の一覧については,マニュアル「HiRDB システム運用ガイド」を参照してください。
- 注※
-
Open/TP1配下のアプリケーションを介している場合,又はWebサーバなどの製品を介している場合は,エンドユーザが実行しているアプリケーションの情報ではなく,HiRDBに接続しているアプリケーションの情報が取得されます。
(5) 監査証跡の参照
監査証跡は監査証跡ファイルに出力されます。監査証跡ファイル中のデータをデータベース作成ユティリティ(pdloadコマンド)で,監査証跡表にデータロードした後にSQLで参照できます。なお,監査人はこの監査証跡表を参照できます(更新はできません)。監査人以外のユーザは,主監査人に参照権限を与えてもらえば監査証跡表を参照できます(更新はできません)。監査証跡の参照方法を次の図に示します。
- 〔説明〕
-
-
監査対象のイベントが実行された場合,監査証跡ファイルに監査証跡が出力されます。監査証跡ファイルは監査証跡ファイル用のHiRDBファイルシステム領域内に作成されます。監査対象のイベントについては,「監査対象になるイベント」を参照してください。
-
監査証跡ファイルに出力された監査証跡を入力情報にして,データベース作成ユティリティ(pdloadコマンド)のデータロードで表にデータを登録します。なお,監査証跡表の自動データロード機能を適用すると,データベース作成ユティリティの実行はHiRDBが自動で行います。
-
監査人は監査証跡表を利用して監査を実施します。
-