栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

Oracle数据库审计功能的使用

Oracle数据库审计功能的使用

oracle审计功能
  • 查看审计功能是否开启
    • 开启审计功能:
    • 关闭审计功能:
    • 审计功能相关视图
  • 审计功能的使用
    • 数据库打开的语句审计功能
    • 数据库打开的权限审计功能
    • 数据库审计总体情况
    • 数据库语句审计
    • 数据库对象审计
    • 数据库会话情况审计

查看审计功能是否开启
  show parameter audit;

audit_sys_operations:默认为false,当设置为true时,所有sys用户(包括以sysdba,sysoper身份登录的用户)的操作都会被记录,audit trail不会写在aud$表中,这个很好理解,如果数据库还未启动aud$不可用,那么像conn / as sysdba这样的连接信息,只能记录在其它地方。如果是windows平台,audti trail会记录在windows的事件管理中,如果是linux/unix平台则会记录在audit_file_dest参数指定的文件中。
audit_trail:None:是默认值,不做审计;DB:将audit trail 记录在数据库的审计相关表中,如aud,审计的结果只有连接信息;DB,Extended:这样审计结果里面除了连接信息还包含了当时执行的具体语句;OS:将audit trail 记录在操作系统文件中,文件名由audit_file_dest参数指定;

开启审计功能:
	SQL> alter system set audit_sys_operations=TRUE scope=spfile;--审计管理用户(以sysdba/sysoper角色登陆)
   	SQL> alter system set audit_trail=db,extended scope=spfile;
关闭审计功能:
       SQL> conn /as sysdba
       SQL> show parameter audit
       SQL> alter system set audit_trail = none scope=spfile;

关闭审计功能需重启实例

审计功能相关视图
       sys.aud$
       dba_audit_trail
       dba_audit_session
       dba_audit_object
       dba_audit_statement
       dba_audit_exits
       dba_stmt_audit_opts
       dba_priv_audit_opts
       dba_obj_audit_opts
审计功能的使用 数据库打开的语句审计功能
	select nvl(t.user_name,'EVERY_USER) 审计用户,t.audit_option 操作类型,t.success,t.failure from dba_stmt_audit_opts t;

解析:SYSTEM WIDE AUDITING 对任何用户做了audit_option中的操作时,结果为success或者failure进行审计

数据库打开的权限审计功能
	select nvl(t.user_name,'EVERY_USER) 审计用户,t.audit_option 操作类型,t.success,t.failure from dba_priv_audit_opts t;

解析:SYSTEM WIDE AUDITING 对任何用户做了audit_option中的操作时,结果为success或者failure进行审计

数据库审计总体情况
	select coung(*) from dba_audit_trail where t.timestamp > date '2021-01-01' and t.timestamp < date '2021-06-30';

解析:数据库审计功能总共审计的条数,包含各个功能审计的内容。

数据库语句审计
	select count(*) from dba_audit_statement t where t.timestamp > date '2021-01-01' and t.timestamp < date '2021-06-30';
	select t.USERNAME,count(t.USERNAME) from dba_audit_statement t where t.timestamp > date '2021-01-01' and t.timestamp < date '2021-06-30' group by t.USERNAME order by t.USERNAME;
	select t.ACTION_NAME,count(t.ACTION_NAME) from dba_audit_statement t where t.timestamp > date '2021-01-01' and t.timestamp < date '2021-06-30' group by t.ACTION_NAME order by t.ACTION_NAME;

解析:可查看某用户被语句审计的次数,具体行为可查看更为详细的审计内容。

数据库对象审计
	select count(*) from dba_audit_object t where t.timestamp > date '2021-01-01' and t.timestamp < date '2021-06-30';
	select t.USERNAME,count(t.USERNAME) from dba_audit_object t where t.timestamp > date '2021-01-01' and t.timestamp < date '2021-06-30' group by t.USERNAME order by t.USERNAME;
	select t.ACTION_NAME,count(t.ACTION_NAME) from dba_audit_statement t where t.timestamp > date '2021-01-01' and t.timestamp < date '2021-06-30' group by t.ACTION_NAME order by t.ACTION_NAME;

解析:可查看某用户被对象审计的次数,具体行为可查看更为详细的审计内容。

数据库会话情况审计
	select count(*) from dba_audit_session t where t.timestamp > date '2021-01-01' and t.timestamp < date '2021-06-30';
	select t.USERNAME,count(t.USERNAME) from dba_audit_session t where t.timestamp > date '2021-01-01' and t.timestamp < date '2021-06-30' group by t.USERNAME order by t.USERNAME;
	select t.ACTION_NAME,count(t.ACTION_NAME) from dba_audit_session t where t.timestamp > date '2021-01-01' and t.timestamp < date '2021-06-30' group by t.ACTION_NAME order by t.ACTION_NAME;

解析:可查看某用户被会话审计的次数,具体行为可查看更为详细的审计内容。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/281658.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号