前提:已开启审计
语句级别审计
启用语句审计:
sysaudit.set_audit_stmt(audit_type text,
audit_users text
,
audit_schema text,
audit_objs text
)
参数说明:
audit_type
语句级审计策略,支持
DML
、
DDL
、
TCL
语句等。
可以指定审计某一种
SQL
命令。
详见表
13-2
审计策略与
SQL
命令对应表
audit_users
审计的用户名,
null
表示审计所有用户。
audit_schema
审计对象的模式名。可以为空,表示审计所有模式下的此类对象。
audit_objs
审计对象的名称,只有
select table
、
insert table
、
update table
、
delete table
、
truncate table
、
drop table
这六种语句支持设置表名。
返回值说明:
无返回值
取消审计:
sysaudit
.
remove_audit (rule_id bigint)
参数说明:
rule_id
审计策略编号(创建后可从
all_audit_rules
中查询)
语句审计示例:
审计
system
用户的表创建动作。
SELECT sysaudit
.
set_audit_stmt(
'CREATE TABLE'
,
'system'
, null, null);
审计用户
user_a
的表修改动作
SELECT sysaudit
.
set_audit_stmt(
'alter table'
,
'user_a'
, null, null);
取消编号为
10001
的审计策略。
CALL sysaudit
.
remove_audit (
10001
);