#行为审计
行为审计包括系统操作行为审计和对象操作行为审计:
- 系统操作行为:包括对象创建/删除、建库/关库、提交/回滚等所有的系统操作行为,在AUDITABLE_SYSTEM_ACTIONS视图中可以看到系统当前所有的系统操作行为审计项,其中ALL表示对所有的系统操作行为都进行审计。
- 对象操作行为:表示对某个具体对象的操作行为,例如对某张表的SELECT/INSERT/UPDATE/DELETE操作,在AUDITABLE_OBJECT_ACTIONS视图中可以看到系统当前所有的对象操作行为审计项,其中ALL表示对在一个对象上的所有操作行为都进行审计。
例如,创建一个审计策略,定义针对drop table系统操作、对sales用户的area对象的delete、insert、update操作,以及sales_info对象的所有操作进行审计:
CREATE AUDIT POLICY up2
ACTIONS DROP TABLE,
DELETE ON sales.area,
INSERT ON sales.area,
UPDATE ON sales.area,
ALL ON sales.sales_info;
AUDIT POLICY up2;
在sales用户下执行如下操作:
conn sales/sales
UPDATE area SET DHQ='guangzhou' WHERE area_no='01';
DELETE FROM sales_info;
DROP TABLE orders_info;
执行上述操作后,即可在UNIFIED_AUDIT_TRAIL视图中获得对应权限审计记录:
SELECT dbusername,event_timestamp,sql_text,object_schema
FROM UNIFIED_AUDIT_TRAIL
WHERE dbusername='SALES';
DBUSERNAME EVENT_TIMESTAMP SQL_TEXT OBJECT_SCHEMA
------------ ----------------------------- --------------------------------------------------- ---------------
SALES 2022-11-10 14:30:22.141704 UPDATE area SET DHQ='guangzhou' WHERE area_no='01' SALES
SALES 2022-11-10 14:37:23.154117 DELETE FROM sales_info SALES
SALES 2022-11-10 14:30:23.546762 DROP TABLE orders_info SALES