当前位置:  数据库>oracle

Oracle数据库审计概述

    来源: 互联网  发布时间:2017-04-06

    本文导语:  针对SYSDBA的审计,Oracle提供了三种技术: 1、数据库审计用户的使用的特权,执行的命令和访问的表,以及登录状态 2、使用数据库触发器对发起基于值的审计; 3、细粒度审计可以追踪到对表中哪些行进行了访问; 当初始化参...

针对SYSDBA的审计,Oracle提供了三种技术:

1、数据库审计用户的使用的特权,执行的命令和访问的表,以及登录状态

2、使用数据库触发器对发起基于值的审计;

3、细粒度审计可以追踪到对表中哪些行进行了访问;

当初始化参数文件AUDIT_SYS_OPERATIONS被设置为true时,SYSDBA和SYSOPER执行的语句将被记录到操作系统的审计文件中;

标准审计

在进行数据库审计前 AUDIT_TRAIL初始化参数文件需要被设置:

  • NONE:不执行审计
  • OS:审计文件被写入到操作系统中——the Application Log on windws, or the AUDIT_FILE_DEST directory on Uinx
  • DB:审计文件被写入到数据库的数据字典表中:SYS.AUD$
  • DB_EXTENDED
  • XML
  • XML_EXXTENDED

例:

audit create any trigger; --审计所有创建触发器的操作

auditselect any table by session;

audit insert on scott.emp whenever successful;--还有一个选项是WHENEVER NOT SUCCESSFUL;

audit allon scott.emp;

audit session whenever not successful;--对用户登录进行审计; 

--查看系统产生的审计信息

select * fromdba_audit_trail;

其他产生的审计信息的视图还包括:

DBA_AUDIT_OBJECT,DBA_AUDIT_STATEMENT, DBA_AUDIT_SESSION

 

使用触发器来对值进行审计

A database trigger is a block of PL/SQL code that wil runautomaitcally whenever in INSERT, UPDATE, OR DELETE is executed against a table.

例:

CREATE ORREPLACE TRIGGER system.creditrating_audit

AFTERUPDAT OF creditrating

ON scott.customers

REFERENCINGNEW AS NEW OLD AS OLD

FOR EACHROW

BEGIN

IF :old.creditrationg!= :new.creditrating THEN

INSERT INTO system.creditrating_audit

VALUES(sys_context('userenv','os_user'),

sys_context('userenv','ip_address'),

:new.customer_id || 'credit rating changed from' || :old.creditrating ||' to ' || :new.creditrating);

END IF;

END;

/

 

细粒度审计Fine-Grained Auditing(FGA)

FGA isconfigured with the package DBMS_FGA

sql>execute dbms_fga.add_policy(-

object_schema=>'HR',-

object_name=>'EMPLOYEES',-

policy_name=>'POL1',-

audit_condition=>'department_id=80',-

audit_column=>'SALARY');

 

DBA_AUDIT_TRIALis used for standard database auditing;

DBA_FGA_AUDIT_TRAIL:is used for fine-grained auditing;

DBA_COMMON_AUDIT_TRAIL:is used for both;

To seethe results of auditing with triggers, you must create your own views thataddress your own tables;


    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • Oracle 数据库开发工具 Oracle SQL Developer
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • 请问大家用oracle数据库, 用import oracle.*;下的东西么? 还是用标准库?
  • Oracle 数据库(oracle Database)性能调优技术详解
  • 关于JDBC连接Oracle数据库,是否必须有Oracle客户端
  • ORACLE数据库常用字段数据类型介绍
  • win2000+jbuilder6+oracle817编出的程序,在win2000下执行很好,在win98下却访问不了oracle数据库
  • oracle数据库导出和oracle导入数据的二种方法(oracle导入导出数据)
  • Oracle发布Oracle SQL Developer 1.2数据库开发工具 帮助用户简化开发工作
  • 怎样调出ORACLE数据库中的数据,该如何连接?
  • Oracle收购TimesTen 提高数据库软件性能
  • 卸载oracle数据库
  • Oracle数据库恢复后心得
  • linux上安装oracle 数据库后,是否能写shell程序实现数据库的自动启动。
  • Linux下如何用C语言操作Oracle数据库相关的图书推荐
  • Oracle数据库运行Oracle form时避免出现提示信息
  • Oracle欲收购开源数据库MySQL未果
  • 如何在JBuilder中连接Oracle数据库?
  • Oracle数据库访问参数文件的顺序
  • 循序渐进学习Oracle数据库
  • Oracle 12c发布简单介绍及官方下载地址
  • Web服务器/前端 iis7站长之家
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle 10g和Oracle 11g网格技术介绍
  • Oracle EBS R12 支持 Oracle Database 11g
  • oracle中如何把表中具有相同值列的多行数据合并成一行
  • SCO unix下安装oracle,但没有光盘,请大家推荐一个oracle下载站点(unix版本的)。谢谢!!!!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3