Oracle 11g数据库默认审计选项说明详解_Oracle_数据库_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 数据库 > Oracle > Oracle 11g数据库默认审计选项说明详解

Oracle 11g数据库默认审计选项说明详解

 2013/8/10 1:20:12    程序员俱乐部  我要评论(0)
  • 摘要:在Oracle11g中默认启用审计选项,AUDIT_TRAIL参数的缺省值为DB,而在Oracle10g中该参数默认值为none,即不启用审计。审计数据默认存放SYSTEM表空间下的AUD$审计字典基表上。Oracle官方宣称默认启用的审计日志不会对绝大多数产品数据库的性能带来过大的负面影响,同时Oracle公司还推荐使用基于OS文件的审计日志记录方式(OSaudittrailfiles)。注意在Oracle11g中CREATESESSION将被作为受审计的权限来被记录
  • 标签:详解 ORA 数据库 数据 Oracle

Oracle 11g中默认启用审计选项,AUDIT_TRAIL参数的缺省值为DB,而在Oracle 10g中该参数默认值为none,即不启用审计。审计数据默认存放SYSTEM 表空间下的AUD$审计字典基表上。Oracle官方宣称默认启用的审计日志不会对绝大多数产品数据库的性能带来过大的负面影响,同时Oracle公司还推荐使用基于OS文件的审计日志记录方式(OS audit trail files)。

注意在Oracle11g中CREATE SESSION将被作为受审计的权限来被记录,因此当SYSTEM表空间因磁盘空间而无法扩展时将导致这部分审计记录无法生成,这将最终导致普通用户的新会话将无法正常创建,普通用户将无法登陆数据库。在这种场景中仍可以使用SYSDBA身份的用户创建会话,在将审计数据合适备份后删除一部分记录,或者干脆TRUNCATE AUD$都可以解决上述问题。

当AUDIT_TRAIL设置为OS时,审计记录文件将在AUDIT_FILE_DEST参数所指定的目录中生成。全部这些文件均可以随时被删除或复制。

注意在默认情况下会以AUTOEXTEND ON自动扩展选项创建SYSTEM表空间,因此系统表空间在必要情况下还是会自动增长的,我们所需注意的是磁盘上的剩余空间是否能够满足其增长需求,以及数据文件扩展的上限,对于普通的8k smallfile表空间而言单个数据文件的最大尺寸是32G。

    class="dp-xml">
  1. SQL> select * from v$version whererownum=1;  
  2. BANNER  
  3. --------------------------------------------------------------------------------  
  4. Oracle Database 11g Enterprise EditionRelease 11.2.0.1.0 - Production 

以下权限将对所有用户审计:

  1. DBA_PRIV_AUDIT_OPTS describescurrent system privileges being audited across the system and by user.  
  2. SQL> select privilege,success,failurefrom dba_priv_audit_opts;  
  3. PRIVILEGE                                SUCCESS    FAILURE  
  4. -------------------------------------------------- ----------  
  5. CREATE EXTERNAL JOB                      BY ACCESS  BY ACCESS  
  6. CREATE ANY JOB                           BY ACCESS  BY ACCESS  
  7. GRANT ANY OBJECT PRIVILEGE               BY ACCESS  BY ACCESS  
  8. EXEMPT ACCESS POLICY                     BY ACCESS  BY ACCESS  
  9. CREATE ANY LIBRARY                       BY ACCESS  BY ACCESS  
  10. GRANT ANY PRIVILEGE                      BY ACCESS  BY ACCESS  
  11. DROP PROFILE                             BY ACCESS  BY ACCESS  
  12. ALTER PROFILE                            BY ACCESS  BY ACCESS  
  13. DROP ANY PROCEDURE                       BY ACCESS  BY ACCESS  
  14. ALTER ANY PROCEDURE                      BY ACCESS  BY ACCESS  
  15. CREATE ANY PROCEDURE                     BY ACCESS  BY ACCESS  
  16. PRIVILEGE                                SUCCESS    FAILURE  
  17. -------------------------------------------------- ----------  
  18. ALTER DATABASE                           BY ACCESS  BY ACCESS  
  19. GRANT ANY ROLE                           BY ACCESS  BY ACCESS  
  20. CREATE PUBLIC DATABASE LINK              BY ACCESS  BY ACCESS  
  21. DROP ANY TABLE                           BY ACCESS  BY ACCESS  
  22. ALTER ANY TABLE                          BY ACCESS  BY ACCESS  
  23. CREATE ANY TABLE                         BY ACCESS  BY ACCESS  
  24. DROP USER                                BY ACCESS  BY ACCESS  
  25. ALTER USER                               BY ACCESS  BY ACCESS  
  26. CREATE USER                              BY ACCESS  BY ACCESS  
  27. CREATE SESSION                           BY ACCESS  BY ACCESS  
  28. AUDIT SYSTEM                             BY ACCESS  BY ACCESS  
  29. PRIVILEGE                                SUCCESS    FAILURE  
  30. -------------------------------------------------- ----------  
  31. ALTER SYSTEM                             BY ACCESS  BY ACCESS  
  32. 23 rows selected.  
  33. SQL> 

以下语句也将对所有用户审计:

  1. DBA_STMT_AUDIT_OPTS describescurrent system auditing options across the system and by user.  
  2. SQL> select audit_option,success,failurefrom dba_stmt_audit_opts;  
  3. AUDIT_OPTION                             SUCCESS    FAILURE  
  4. -------------------------------------------------- ----------  
  5. ALTER SYSTEM                             BY ACCESS  BY ACCESS  
  6. SYSTEM AUDIT                             BY ACCESS  BY ACCESS  
  7. CREATE SESSION                           BY ACCESS  BY ACCESS  
  8. CREATE USER                              BY ACCESS  BY ACCESS  
  9. ALTER USER                               BY ACCESS  BY ACCESS  
  10. DROP USER                                BY ACCESS  BY ACCESS  
  11. PUBLIC SYNONYM                           BY ACCESS  BY ACCESS  
  12. DATABASE LINK                            BY ACCESS  BY ACCESS  
  13. ROLE                                     BYACCESS  BY ACCESS  
  14. PROFILE                                  BYACCESS  BY ACCESS  
  15. CREATE ANY TABLE                         BY ACCESS  BY ACCESS  
  16. AUDIT_OPTION                             SUCCESS    FAILURE  
  17. -------------------------------------------------- ----------  
  18. ALTER ANY TABLE                          BY ACCESS  BY ACCESS  
  19. DROP ANY TABLE                           BY ACCESS  BY ACCESS  
  20. CREATE PUBLIC DATABASE LINK              BY ACCESS  BY ACCESS  
  21. GRANT ANY ROLE                           BY ACCESS  BY ACCESS  
  22. SYSTEM GRANT                             BY ACCESS  BY ACCESS  
  23. ALTER DATABASE                           BY ACCESS  BY ACCESS  
  24. CREATE ANY PROCEDURE                     BY ACCESS  BY ACCESS  
  25. ALTER ANY PROCEDURE                      BY ACCESS  BY ACCESS  
  26. DROP ANY PROCEDURE                       BY ACCESS  BY ACCESS  
  27. ALTER PROFILE                            BY ACCESS  BY ACCESS  
  28. DROP PROFILE                             BY ACCESS  BY ACCESS  
  29. AUDIT_OPTION                             SUCCESS    FAILURE  
  30. -------------------------------------------------- ----------  
  31. GRANT ANY PRIVILEGE                      BY ACCESS  BY ACCESS  
  32. CREATE ANY LIBRARY                       BY ACCESS  BY ACCESS  
  33. EXEMPT ACCESS POLICY                     BY ACCESS  BY ACCESS  
  34. GRANT ANY OBJECT PRIVILEGE               BY ACCESS  BY ACCESS  
  35. CREATE ANY JOB                           BY ACCESS BY ACCESS  
  36. CREATE EXTERNAL JOB                      BY ACCESS  BY ACCESS  
  37. 28 rows selected. 

查询当前数据库中的现有的审计记录:

  1. DBA_AUDIT_TRAIL displaysall standard audit trail entries.  
  2. SQL> select action_name,count(*) from dba_audit_trail group by action_name;  
  3. ACTION_NAME                    COUNT(*)  
  4. ---------------------------- ----------  
  5. SYSTEM REVOKE                         1  
  6. LOGON                                90  
  7. DROP DATABASE LINK                    5  
  8. LOGOFF                               59  
  9. ALTER SYSTEM                          5  
  10. CREATE PUBLIC SYNONYM                 2  
  11. ALTER DATABASE                        3  
  12. DROP PUBLIC SYNONYM                   2  
  13. CREATE DATABASE LINK                  5  
  14. 9 rows selected. 

关于Oracle 11g数据库默认审计选项说明的相关知识就介绍到这里了,希望本次的介绍能够对您有所帮助。

发表评论
用户名: 匿名