ChatGPTの回答をのせるだけ
統合監査(Unified Auditing)で監査が設定されているオブジェクトを確認するには、AUDIT_UNIFIED_POLICIES
および AUDIT_UNIFIED_ENABLED_POLICIES
ビューを使用します。以下は、統合監査ポリシーとその適用オブジェクトを確認する方法です。
作成された監査ポリシーを確認する
まず、AUDIT_UNIFIED_POLICIES
ビューを使用して、作成された統合監査ポリシーを確認します。
SELECT
POLICY_NAME, -- 監査ポリシーの名前
ENABLED_OPT, -- 有効化オプション(例: BY USER、BY SYSTEM など)
SUCCESS, -- 成功した操作を監査するかどうか
FAILURE -- 失敗した操作を監査するかどうか
FROM
AUDIT_UNIFIED_POLICIES;
監査ポリシーが適用されているオブジェクトを確認する
どのテーブルやオブジェクトに統合監査ポリシーが適用されているかを確認するには、AUDIT_UNIFIED_ENABLED_POLICIES
ビューを参照します。
SELECT
POLICY_NAME, -- 監査ポリシーの名前
OBJECT_SCHEMA, -- オブジェクトが属するスキーマ
OBJECT_NAME, -- オブジェクト名(テーブル、ビューなど)
OBJECT_TYPE -- オブジェクトの種類(TABLE、VIEW など)
FROM
AUDIT_UNIFIED_ENABLED_POLICIES
WHERE
OBJECT_TYPE = 'TABLE'; -- テーブルの監査ポリシーのみを確認
特定のオブジェクトに適用されている監査設定を確認する
特定のテーブルに統合監査ポリシーが適用されているかどうかを確認するには、次のクエリを使用します。
SELECT
POLICY_NAME,
OBJECT_SCHEMA,
OBJECT_NAME,
OBJECT_TYPE
FROM
AUDIT_UNIFIED_ENABLED_POLICIES
WHERE
OBJECT_NAME = 'YOUR_TABLE_NAME'
AND OBJECT_TYPE = 'TABLE';
クエリ結果の説明
-
POLICY_NAME
:オブジェクトに関連付けられている監査ポリシーの名前が表示されます。 -
OBJECT_SCHEMA
とOBJECT_NAME
:それぞれオブジェクトのスキーマ名とオブジェクト名が表示されます。 -
OBJECT_TYPE
:オブジェクトの種類(TABLE、VIEW など)が表示されます。
これらのクエリを使用することで、どのテーブルが統合監査の対象となっているか、そしてどの監査ポリシーが適用されているかを確認することができます。
従来監査(Traditional Auditing)でどのオブジェクト(テーブルなど)が監査設定されているかを確認するには、DBA_OBJ_AUDIT_OPTS
ビューを参照します。このビューには、現在のデータベースで監査が有効になっているオブジェクト(テーブルやビューなど)の詳細情報が表示されます。以下にいくつかの重要なクエリを示します。
監査が有効になっているすべてのオブジェクトを確認するクエリ
SELECT
OWNER, -- オブジェクトの所有者
OBJECT_NAME, -- オブジェクト名(テーブル、ビューなど)
OBJECT_TYPE, -- オブジェクトの種類(TABLE、VIEW など)
ALT, -- ALTER 操作の監査設定
AUD, -- AUDIT 操作の監査設定
COM, -- COMMENT 操作の監査設定
DEL, -- DELETE 操作の監査設定
GRANT, -- GRANT 操作の監査設定
IND, -- INDEX 操作の監査設定
INS, -- INSERT 操作の監査設定
LOC, -- LOCK 操作の監査設定
REN, -- RENAME 操作の監査設定
SEL, -- SELECT 操作の監査設定
UPD, -- UPDATE 操作の監査設定
REF, -- REFERENCES 操作の監査設定
EXE, -- EXECUTE 操作の監査設定
FBK -- FLASHBACK 操作の監査設定
FROM
DBA_OBJ_AUDIT_OPTS
WHERE
OBJECT_TYPE = 'TABLE';
クエリ結果の説明
-
OWNER
とOBJECT_NAME
:監査が有効になっているテーブルの所有者とテーブル名を示します。 - 各操作列(例:
SEL
,INS
,UPD
,DEL
など):監査が有効になっている特定の操作タイプを示します。
-S/S
は成功した操作と失敗した操作の両方が監査されることを示します。
-S/-
は成功した操作のみが監査されることを示します。
--/F
は失敗した操作のみが監査されることを示します。
--/-
はその操作に対して監査が無効であることを示します。
特定のテーブルの監査設定を確認する例
特定のテーブルが監査されているかどうかを確認するには、以下のクエリを使用します:
SELECT
OWNER,
OBJECT_NAME,
SEL,
INS,
UPD,
DEL
FROM
DBA_OBJ_AUDIT_OPTS
WHERE
OBJECT_NAME = 'YOUR_TABLE_NAME'
AND OBJECT_TYPE = 'TABLE';
このクエリは、YOUR_TABLE_NAME
テーブルに対して SELECT
、INSERT
、UPDATE
、DELETE
操作が監査されているかどうかを表示します。