Oracle数据库SQL审计
短信预约 -IT技能 免费直播动态提醒
在我们日常的工作中,一些安全性的要求高的数据库需要增加审计操作,哪个用户什么时间做了什么操作。
1.打开数据库的审计
alter system set audit_sys_operations=TRUE scope=spfile; //审计管理用户
alter system set audit_trail=db,extended scope=spfile; //将sql语句写入审计表中
2.对数据库重启并查看
重启数据库
shutdown immediate;
startup;
show parameter audit;
3.增加审计策略
我们需要对数据库的caiwu用户的所有操作进行审计
// 审计用户caiwu所有成功的操作
audit all by caiwu by access whenever successful;
或者
//针对用户的审计(未执行成功的也审计)
audit select table by caiwu by access; //查表审计
audit update table by caiwu by access; //更新审计
audit delete table by caiwu by access; //删除审计
audit insert table by caiwu by access; //插入审计
//针对某表的更新、删除审计(错误也审计)
AUDIT UPDATE,DELETE,INSERT ON T_TEST by access;
//保护审计
audit all on sys.aud$ by access;
4.取消审计
NOAUDIT UPDATE,DELETE,INSERT ON T_TEST by access;
5.查询审计结果
select OS_USERNAME,username,USERHOST,TERMINAL,TIMESTAMP,OWNER,obj_name,ACTION_NAME,sessionid,os_process,sql_text from dba_audit_trail;
6.将审计表查询开放给某个用户grant select on dba_audit_trail to caiwu;
7.清空审计记录DELETE FROM SYS.AUD$;
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341