Oracle审计

摘要:
Oracle数据库还将在操作系统$Oracle_BASE/admin/$Oracle_SID/adump/将数据库实例与sysdba或sysoper和其他管理员用户连接(无论实例是否打开)关闭数据库操作打开数据库操作3。标准审计3.1。数据库参数audit_file_ destOS_sys_中的审计信息存储位置操作的默认值为FALSE。

1.什么是审计

审计是用来监控和记录用户的数据库操作

2.未开启审计

即使未开启审计,Oracle数据库也会将以下三种操作记录在OS的$ORACLE_BASE/admin/$ORACLE_SID/adump/

  • 以sysdba或者sysoper等管理员用户连接数据库实例(不管实例是否打开)
  • 关闭数据库操作
  • 打开数据库操作

3.标准审计

3.1.数据库参数

  • audit_file_dest

    OS中审计信息存放位置

  • audit_sys_operations

    默认值为FALSE,即不审计,修改后需要重启数据库

    审计sys(或者以sysdba,sysoper身份登录)用户的所有操作(查询表,更新表等等)

    审计信息放在OS中

  • audit_trail

    none:关闭标准审计,11G之前的默认值

    db:将审计信息记录在数据库中(sys.aud$),只包含连接信息(LOGON,LOGOFF),但不包含以sysdba或者sysoper连接的信息(记录在OS中)

    db,extended:将审计信息记录在数据库中,同时包含执行的SQL以及绑定变量

    os:将审计信息记录在OS中

    xml:以XML的形式将审计信息记录在OS中

    xml,extended:以XML的形式将审计信息记录在OS中,同时记录执行的SQL以及绑定变量

3.2.审计级别

3.1节中,audit_trail为db,extended或者xml,extended时,可以记录额外的SQL信息,前提是开启了语句,权限或者对象审计

  1. 语句级别

    对某种类型的SQL语句进行审计但并不包含具体的对象

  2. 权限级别

    任何使用了这个权限的都会被审计

  3. 对象级别

    对数据库对象进行审计

3.3.审计用SQL

/*语句级别*/
-- 审计所有对表的操作,例如修改,创建,删除表
audit table;
-- 取消审计
noaudit table;

/*权限级别*/
-- 审计所有使用此权限的操作
audit select any table;
-- 取消审计
noaudit select any table;

/*对象级别*/
-- 审计某个表增删改查的操作
aduit select,update,insert,delete on monkey.test;
-- 取消审计
noaudit select,update,insert,delete on monkey.test;

/*通用部分*/
by access  --每一个被审计的操作都会生成一条audit trail
by session --一个会话里面同类型的操作只会生成一条audit trail,默认为by session
whenever successful --操作成功才审计
whenever not successful --操作失败才审计

3.4.标准审计相关视图

  • DBA_OBJ_AUDIT_OPTS

    对象级别标准审计的策略

  • DBA_STMT_AUDIT_OPTS

    语句级别标准审计的策略

  • DBA_PRIV_AUDIT_OPTS

    权限级别标准审计策略

  • DBA_AUDIT_OBJECT

    对象级别标准审计记录

  • DBA_AUDIT_STATEMENT

    语句级别标准审计记录

  • DBA_AUDIT_SESSION

    登录登出标准审计记录(普通用户,以SYSDBA或者SYSOPER的用户不记录)

  • DBA_AUDIT_TRAIL

    所有的标准审计记录

4.精细审计

FGA(fine grained auditing),可以指定更加精细的审计策略

参考:FGA审计

免责声明:文章转载自《Oracle审计》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Android ViewTreeObserver简介-------------转Python使用grequests并发发送请求下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

使用SQL脚本创建数据库,操作主键、外键与各种约束(MS SQL Server)

在实际开发中,可能很少人会手写sql脚本来操作数据库的种种。特别是微软的MS SQL Server数据库,它的SQL Server Management Studio对数据库的图形化操作极致简便,从而导致很多人都不会或不熟悉使用SQL脚本操作数据库。 接下面介绍的是我们日常开发中常规性的各种操作,先看看基本知识,随后使用coding来表述。 SQL Ser...

使用IPMI控制/监控Linux服务器

1       IPMI简述IPMI提供了很多丰富功能,我使用的功能,说得大白话一点,就是: 1、获取本设备的硬件信息:包括CPU和主板的温度、电压、风扇转速。   2、在设备A上,通过命令,控制远程设备B,开机、关机、重启。(看到这个有没有一点想做坏事的冲动,哈哈) IPMI的介绍,基本原理,和必备条件,可参考[1]中说明,很详细畅。 [1]:使用ipm...

ThinkPHP框架使用笔记

SQL日志问题 THINK_VERSION : 5.0.13 SQL访问日志,默认在debug模式下才会打印出来。 测试发现: 浏览器访问、数据库调试模式 debug为false日志不会打印SQL日志,为true会打印日志 命令行访问、数据库调试模式debug对打印SQL日志没有影响都会打印出来。可以设置全局debug模式为false,则不会打印sql日志...

VMware虚拟机不能启动后管理员删除了vmdk文件

虚拟机数据恢复案例介绍:本次数据恢复案例中共涉及一台R710系列服务器和一台MD3200系列存储,上层是虚拟机和虚拟文件,虚拟机系统版本为ESXI5.5版本,由于客户的机房非正常断电导致虚拟机不能启动。机房管理员对虚拟机进行了检查,虚拟机配置文件丢失,继续查询发现了xxx-flat.vmdk磁盘文件和xxx-000001-delta.vmdk快照文件还存在...

MySQL的FLUSH句法

今天仔细看了下Flush语法,同时在工作中也经常使用Flush命令,在这儿汇总下。MySQL的FLUSH句法(清除或者重新加载内部缓存) FLUSH flush_option [,flush_option],如果你想要清除一些MySQL使用内部缓存,你应该使用FLUSH命令。为了执行FLUSH,你必须有reload权限。 flush_option 可以是下...

软考笔记第三天之数据库系统

三级模式-两级映射 数据库模型(概念模式[用户视图]、外模式[DBA视图]、内模式[内部视图]) 外模式-概念模式映射,概念模式-内模式映射 E-R模型,实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。 集成的方法: 多个局部E-R图一次集成。 逐步集成,用累加的...