点击上方"蓝字"

关注我们,享更多干货!

# 前言 #

最近很多人咨询我Oracle的审计功能,下面我用一个非常清晰的过程给大家讲解一个相关案例。

我们都知道Oracle审计功能很强大,自身的审计功能分两种:

  • 标准审计,基本审计数据库和数据库对象发生了什么操作。

  • 精确审计,审计SQL级别、字段级别等。

当然Oracle也有自己的第三方审计产品——AVDF,感兴趣的朋友可以去了解。

以下以用户密码被修改作为审计案例。

开启审计

审计级别

alter system set audit_trail=os scope=spfile;

Note:

默认是DB级别,存放在System表空间。若想将审计记录存放在表空间,可以把AUD$表迁移至专门的表空间存放,避免后期庞大影响系统登录。Oracle官方是建议将审计记录存放在本地,当然也要定期清理。

审计sys的操作

alter system set audit_sys_operations=true scope=spfile;

Note:

审计sys用户、SYSDBA、SYSOPER、SYSASM之类的权限的操作。

查看审计日志存放目录

show  parameter audit_file_dest
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
audit_file_dest                      string      /oracle/app/oracle/admin/fordb/adump
SQL>

重启数据库生效

shutdown immediate
startup

修改审计策略

查看

select * from dba_stmt_audit_opts;

Note:

  • dba_obj_audit_opts (对象级审计)

  • dba_priv_audit_opts (权限级审计)

  • dba_stmt_audit_opts (语句级审计)

11g默认有29个审计策略,12c以后就取消了。

修改审计策略

noaudit all;
noaudit all statements;
noaudit all privileges;
noaudit EXEMPT ACCESS POLICY;
audit alter user  by access;

Note:

本次以审计用户密码被修改作为案例,可以根据自身情况自定义。

查看

SQL> select AUDIT_OPTION from dba_stmt_audit_opts;AUDIT_OPTION
----------------------------------------
ALTER USER

验证

修改密码

alter user system identified by oracle;

查看审计内容

[oracle@aix173 /oracle/app/oracle/admin/fordb/adump]$cat fordb_ora_16056492_20210818105717089062143795.aud
Audit file /oracle/app/oracle/admin/fordb/adump/fordb_ora_16056492_20210818105717089062143795.aud
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORACLE_HOME = /oracle/app/oracle/product/11.2.0.4/dbhome_1
System name:    AIX
Node name:      aix173
Release:        1
Version:        7
Machine:        00C310D54C00
Instance name: fordb
Redo thread mounted by this instance: 1
Oracle process number: 19
Unix process pid: 16056492, image: oracle@aix173 (TNS V1-V3)Wed Aug 18 10:57:17 2021 -05:00
LENGTH: "240"
SESSIONID:[5] "51387" ENTRYID:[1] "1" STATEMENT:[1] "9" USERID:[6] "SYSTEM" USERHOST:[6] "aix173" TERMINAL:[5] "pts/1" ACTION:[2] "43" RETURNCODE:[1] "0" OBJ$NAME:[6] "SYSTEM" OS$USERID:[6] "oracle" DBID:[9] "498190680" PRIV$USED:[2] "22"[oracle@aix173 /oracle/app/oracle/admin/fordb/adump]$

Note:

审计文件后期会产生很多,很难查看,因为只要用sysdba登录数据库就会产生一个文件。不过sys产生的审计日志内容比较直观些。

sys产生的内容:

[oracle@aix173 /oracle/app/oracle/admin/fordb/adump]$cat fordb_ora_10879150_20210818105344009057143795.aud
Audit file /oracle/app/oracle/admin/fordb/adump/fordb_ora_10879150_20210818105344009057143795.aud
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORACLE_HOME = /oracle/app/oracle/product/11.2.0.4/dbhome_1
System name:    AIX
Node name:      aix173
Release:        1
Version:        7
Machine:        00C310D54C00
Instance name: fordb
Redo thread mounted by this instance: 1
Oracle process number: 19
Unix process pid: 10879150, image: oracle@aix173 (TNS V1-V3)Wed Aug 18 10:53:44 2021 -05:00
LENGTH : '158'
ACTION :[7] 'CONNECT'
DATABASE USER:[1] '/'
PRIVILEGE :[6] 'SYSDBA'
CLIENT USER:[6] 'oracle'
CLIENT TERMINAL:[5] 'pts/1'
STATUS:[1] '0'
DBID:[9] '498190680'Wed Aug 18 10:53:44 2021 -05:00
LENGTH : '157'
ACTION :[6] 'COMMIT'
DATABASE USER:[1] '/'
PRIVILEGE :[6] 'SYSDBA'
CLIENT USER:[6] 'oracle'
CLIENT TERMINAL:[5] 'pts/1'
STATUS:[1] '0'
DBID:[9] '498190680'Wed Aug 18 10:53:44 2021 -05:00
LENGTH : '157'
ACTION :[6] 'COMMIT'
DATABASE USER:[1] '/'
PRIVILEGE :[6] 'SYSDBA'
CLIENT USER:[6] 'oracle'
CLIENT TERMINAL:[5] 'pts/1'
STATUS:[1] '0'
DBID:[9] '498190680'Wed Aug 18 10:54:05 2021 -05:00
LENGTH : '186'
ACTION :[34] ' alter user system identified by *'
DATABASE USER:[1] '/'
PRIVILEGE :[6] 'SYSDBA'
CLIENT USER:[6] 'oracle'
CLIENT TERMINAL:[5] 'pts/1'
STATUS:[1] '0'
DBID:[9] '498190680'

墨天轮原文链接:https://www.modb.pro/db/100757(复制到浏览器或者点击“阅读原文”立即查看)

关于作者

范伟林,中国DBA联盟(ACDU)成员,拥有5年工作经验,涉及电力、金融、政府等行业,拥有OCM、DCA、OCBA的证书。

END

推荐阅读:267页!2020年度数据库技术年刊

推荐下载:2020数据技术嘉年华PPT下载

2020数据技术嘉年华近50个PPT下载、视频回放已上传墨天轮平台,可在“数据和云”公众号回复关键词“2020DTC”获得!

你知道吗?我们的视频号里已经发布了很多精彩的内容,快去看看吧!↓↓↓

点击下图查看更多 ↓

云和恩墨大讲堂 | 一个分享交流的地方

长按,识别二维码,加入万人交流社群

请备注:云和恩墨大讲堂

  点个“在看”

你的喜欢会被看到❤

Oracle标准审计实战过程详解相关推荐

  1. oracle存储过程报错 跳过,oracle调试存储过程的过程详解

    oracle调试存储过程的过程详解 oracle如果存储过程比较复杂,我们要定位到错误就比较困难,那么可以存储过程的调试功能 先按简单的存储过程做个例子,就是上次做的存储过程(proc_test) 1 ...

  2. oracle clusterware 11g,oracle clusterware 10g/11g 过程详解

    oracle clusterware 10g/11g 进程详解  oracle clusterware 10g/11g 进程详解 The Oracle 10g Clusterware proces ...

  3. 一条标准SQL语句是怎么执行之“步步惊心”过程详解与案例分析

    SQL逻辑执行过程详解(限标准SQL) 表与数据 -- 1 创建 HR.Employees表 CREATE TABLE HR.Employees (empid INT NOT NULL IDENTIT ...

  4. Keras深度学习实战(1)——神经网络基础与模型训练过程详解

    Keras深度学习实战(1)--神经网络基础与模型训练过程详解 0. 前言 1. 神经网络基础 1.1 简单神经网络的架构 1.2 神经网络的训练 1.3 神经网络的应用 2. 从零开始构建前向传播 ...

  5. oracle的userenv和nls_lang详解

    oracle的userenv和nls_lang详解 1.userenv最常见的使用 userenv函数返回当前会话(session)的相关信息.以下sql语句可以查询当前会话连接的数据库字符集 sel ...

  6. (转)理论经典:TCP协议的3次握手与4次挥手过程详解

    摘要: 本文将分别讲解经典的TCP协议建立连接(所谓的"3次握手")和断开连接(所谓的"4次挥手")的过程. 1.前言 尽管TCP和UDP都使用相同的网络层(I ...

  7. WSUS MITM远程攻击实战全过程详解

    本文讲的是 WSUS MITM远程攻击实战全过程详解, 网络攻击(WPAD注入,HTTP / WSUS 中间人攻击,SMBRelay攻击等)是一个非常有用的攻击向量,攻击者可以使用此类攻击尝试以半定向 ...

  8. pytorch实战:详解查准率(Precision)、查全率(Recall)与F1

    pytorch实战:详解查准率(Precision).查全率(Recall)与F1 1.概述 本文首先介绍了机器学习分类问题的性能指标查准率(Precision).查全率(Recall)与F1度量,阐 ...

  9. Hadoop学习之Mapreduce执行过程详解

    一.MapReduce执行过程 MapReduce运行时,首先通过Map读取HDFS中的数据,然后经过拆分,将每个文件中的每行数据分拆成键值对,最后输出作为Reduce的输入,大体执行流程如下图所示: ...

最新文章

  1. 配置文件总结(机房重构知识点总结)
  2. opencv cv2.flip()函数(图像翻转、镜像、颠倒)(沿x轴翻转0、沿y轴翻转【正值】、同时沿x轴y轴翻转-【负值】)
  3. 模板:树上启发式合并(dsu on tree)
  4. 用access建立一个试题库_Access考试题库(含答案).doc
  5. 计算方法matlab编程徐萃薇,计算方法课程设计--用Newton插值多项式处理磁化曲线.docx...
  6. 【华为云技术分享】圣诞特别版 | 数据库频频出现OOM问题该如何化解?
  7. 售价3998元!iQOO 3拉力橙明日全款预售:3月29日首销
  8. fetch jsonp连接mysql_fetch跨域浏览器请求头待研究
  9. C# 关于yield return的研究(转载)
  10. 从小白到中级高级软件测试工程师成长路线!--(上篇)
  11. Tornado框架的初步使用
  12. mysql技术任务_MySQL基础教程(13)MySQL计划任务
  13. Linux宝库快讯 | OpenInfra中国日正式确定会议合作方
  14. linux自己写摄像头驱动,详解linux 摄像头驱动编写
  15. 易基因 | 国自然选题——易基因RNA甲基化测序技术(m6A m5C)正热门
  16. mysql数据库的简单查询一般是查询什么,MySQL的简单查询语句(十五)
  17. 打印和为sum的组合,动规法+DFS+迭代法
  18. 【转】Windows Server 2003删除IE
  19. 政策热市场冷 中国新能源汽车遇尴尬
  20. ps抠图技巧之图层样式

热门文章

  1. Mybatis SQL片段
  2. 力软敏捷开发框架真正源码_敏捷真正使谁受益?
  3. linux对磁盘进行分区_如何在Linux中对磁盘进行分区
  4. keras 微调整模型_如何围绕微服务调整团队
  5. 开源硬件_如何参与开源硬件协会
  6. 适用于大型项目的TinyCircuits,硬件需求较小
  7. mysql 如何磁阵_Raid教程 全程图解手把手教你做RAID
  8. history 改成 模式_前端路由三种模式
  9. 方德系统装exe文件_国产x86处理器+中科方德定制Linux 完美运行exe
  10. 避障跟随测距c语言程序,红外避障小车c语言程序.pdf