操作审计:对用户操作进行审计,包含操作人员、操作时间,操作类型,操作结果,登入登出时间、ip等信息
sql审计:对ddl、dml、dcl操作进行审计,包括事件的日期和时间、主体、sql语句
在虚谷数据库中,你可以开启用户操作审计和SQL审计来跟踪和记录数据库的活动。下面是如何实现这两种审计功能的步骤。
1、用户操作审计
(1)开启审计功能
SET ENABLE_AUDIT ON;
执行截图:
(2)开启DDL命令审计功能
SET REG_DDL ON;
执行截图:
(3)创建测试用户并授权DBA权限
create user user1 IDENTIFIED by 'rdjc#123';
--赋user1用户dba权限
grant dba to user1 ;
执行截图:
(4)使用测试用户登录数据库并创建表:
--切换到user1用户
set session authorization user1;
create table test_audit(id int,info clob);
执行截图:
(5)切换到SYSAUDITOR用户,创建对象级审计规则:
审计user1用户对表user1.test_audit执行成功的查询、更新、插入、删除操作
AUDIT SELECT,UPDATE,INSERT,DELETE ON user1.test_audit BY user1 WHENEVER SUCCESSFUL;
执行截图:
(6)在user1 登录的终端,插入一条测试数据:
insert into test_audit values(999,'audit test');
执行截图:
(7)在审计用户登录的终端,查看审计日志:
select * from SYS_AUDIT_RESULTS;
执行截图:
2、SQL审计
(1)审计用户创建语句级审计规则
--ddl
AUDIT TABLE WHENEVER SUCCESSFUL;
执行截图:
--dml
AUDIT INSERT TABLE WHENEVER SUCCESSFUL;
执行截图:
--DCL
AUDIT GRANT WHENEVER SUCCESSFUL;
执行截图:
--参数修改
AUDIT SYSARGS WHENEVER SUCCESSFUL;
执行截图:
(2)用sysdba用户登录数据库执行ddl、dml、dcl等操作
--ddl
drop table test;
create table test(id int);
执行截图:
--dml
insert into test values(1);
执行截图:
--dcl
create user u1 identified BY 'lio@52222';
grant select on test to u1;
执行截图:
(3)查看审计日志
--在审计用户登录的终端,查看审计日志:
select * from SYS_AUDIT_RESULTS;
执行截图: