你好,游客 登录 注册 搜索
背景:
阅读新闻

Oracle中开启某张表的审计(audit)

[日期:2014-06-15] 来源:Linux社区  作者:xiaoyiyi [字体: ]

Oracle数据库通过audit_trail参数来开启标准审计

它的参数有下面几种

NONE:不开启审计

OS:说明审计信息放在系统汇总,如果是Linux那么由audit_file_dest 决定,如果是Windows 那么由事件查看器决定

DB 或 TRUE :表示审计信息存放在数据库里,也就是sys 用户的aud$ 表。

审计范围分为session 和 access两种

session:表示用户登录之后执行的相同SQL只记录一次,其他相同SQL不再记录;

access:表示每次执行的SQL都进行审计记录。

1、开启审计参数

SQL> alter system set audit_trail=db_extended scope=spfile sid='*';

2、重启数据库

为了使参数生效

su - oracle

$ srvctl stop database -d orcl

$ srvctl start database -d orcl

SQL> show parameter audit;

3、设置对表进行审计

这样每次有用户对表进行操作,那么都会有相应的记录被添加到aud$中,而Oracle为了方便读取数据,创建了视图。

虽然会记录每个用户对表的操作,但是不会记录sys用户的操作,其他所有用户都会做记录。

SQL> audit all on scott.emp by access;

设置之后如果想要看到效果,可以用Scott用户登录进来对表进行操作。

--------------------------------------分割线 --------------------------------------

CentOS 6.4下安装Oracle 11gR2(x64) http://www.linuxidc.com/Linux/2014-02/97374.htm

Oracle 11gR2 在VMWare虚拟机中安装步骤 http://www.linuxidc.com/Linux/2013-09/89579p2.htm

Debian 下 安装 Oracle 11g XE R2 http://www.linuxidc.com/Linux/2014-03/98881.htm

--------------------------------------分割线 --------------------------------------

4、查询审计记录

$ su - oracle

$ sqlplus / as sysdba

alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';

col OS_USERNAME for a10

col USERNAME for a11

col USERHOST for a10

col TERMINAL for a10

col TIMESTAMP for a20

col obj_name for a10

col OWNER for a10

col ACTION_NAME for a11

col TRANSACTIONID for a16

col sql_text for a30

select username,userhost,timestamp,owner,obj_name,action_name,sql_text from dba_audit_trail;

username 登录的用户

userhost 登录的主机

timestamp 时间戳

owner 操作表的所有者

obj_name 操作的表

action_name 做了什么动作

sql_text 具体的SQL

其他:

1、清空aud$

这张系统表是可以使用TRUNCATE命令截断的。把它删掉之后那么视图中的记录也就相应消失了。

SQL> truncate table aud$;

2、取消某张表的审计

SQL> noaudit all on scott.emp;

3、关闭审计

SQL> alter system set audit_trail=none;

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址http://www.linuxidc.com/Linux/2014-06/103183.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款