天天看点

数据库审核

数据库审核

监视用户的权限使用以及跟踪通过这些权限进行的实际操作。()任何一种审核都会增加数据库必须完成的工作量。为了限制该工作量,应当进行重点审核,同时不跟踪不重要的事件。

四种审核技术:

1、审核sysdba活动

若实例参数audit_sys_operations设置为true(默认为false),则作为sysdba或sysoper连接数据库的用户所发布的每条语句都会被写人操作系统的审核跟踪。在unix或linux系统中,sys审核记录的目标文件夹由AUDIT_FILE_DEST参数控制(该参数指向某一目录)。

#show parameter audit_sys_operations;

Name               type        value

Audit_sys_operations  booleam     false

#show parameter   AUDIT_FILE_DEST;

Name            type  value

AUDIT_FILE_DEST  string  /u/app/oracle/admin/orcl/

2、数据库审核:

跟踪系统权限与对象权限的使用、SQL命令的执行、对特定表的访问以及登录尝试。此外,还可以指定当这些事件成功/或因权限不够而失败时是否对它们进行审核。审核对没有成功执行的命令特别有用,此时生成的任何记录都会说明用户视图违反自己的访问权限。

设置数据库审核之前,必须设置audit_trail实例参数。该参数取值如下:

(1)NONE或FALSE:该值禁用数据库审核。

(2)OS : 审核记录会被写至操作系统的审核跟踪(unix系统中的audit_file_dest目录)。

(3)DB:审核记录会被写入数据字典表sys.aud$ 。

(4)DB_EXTENDED:同DB,包含生成审核记录的、具有绑定变量的SQL语句。

(5)XML:与OS的作用大体相同,但使用XML标记设置格式。

(6)XML_EXTENDED:与XML的作用大体相同,但使用SQL语句和绑定变量。

3、基于值得审核:

4、细粒度审核:

今天碰到的情况测试系统system表空间不足。example如下。

SQL > select owner,sum(bytes/1024/1024/1024) from dba_segments where tablespace_name=’SYSTEM’ group by owner;

Owner    sum(bytes/1024/1024/1024)

Outn       0.00005

System      .00053

Sys        1.88000

经查看得知而audit_trail值为db ,表明审核记录会被写入数据字典表sys.aud$ 中,select count(*) from sys.aud$有600多万行,故认为该表影响表空间。可以truncate该表,也可以为system表空间增加空间。

SQL>truncate table sys.aud$;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31411496/viewspace-2129867/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/31411496/viewspace-2129867/