当前位置: 首页 > backend >正文

Oracle 审计参数:AUDIT_TRAIL 和 AUDIT_SYS_OPERATIONS

Oracle 审计参数:AUDIT_TRAIL 和 AUDIT_SYS_OPERATIONS

一 AUDIT_TRAIL 参数

1.1 参数功能

AUDIT_TRAIL 是 Oracle 数据库中最核心的审计控制参数,决定审计记录的存储位置和记录方式。

1.2 参数取值及含义

取值说明适用场景
NONE禁用数据库审计测试环境或不需审计的场景
OS审计记录写入操作系统文件需要操作系统级审计记录时
DB审计记录写入数据库表 SYS.AUD$常规审计需求,记录到数据库表中
DB,EXTENDED同 DB,但包含 SQLBIND 和 SQLTEXT 字段需要记录完整SQL语句和绑定变量的深度审计
XML审计记录以XML格式写入操作系统文件需要结构化审计日志且不使用数据库存储时
XML,EXTENDED同 XML,包含完整SQL文本需要XML格式且包含完整SQL语句的审计

1.3 配置方法

-- 查看当前设置
SELECT name, value FROM v$parameter WHERE name = 'audit_trail';-- 修改设置(需要重启数据库)
ALTER SYSTEM SET audit_trail='DB,EXTENDED' SCOPE=SPFILE;

1.4 注意事项

  • 修改此参数需要重启数据库生效
  • 使用 DB/DB,EXTENDED 时会写入 SYS.AUD$ 表,需监控该表大小
  • EXTENDED 选项会显著增加存储空间需求
  • 使用OS时会生成审计文件,这会占用目录空间及文件系统的inode

二 AUDIT_SYS_OPERATIONS 参数

2.1 参数功能

控制是否审计 SYS 用户(包括 SYSDBA/SYSOPER 权限用户)的操作。

2.2 参数取值

  • TRUE:审计 SYS 用户的所有操作
  • FALSE:不审计 SYS 用户操作(默认值)

2.3 配置方法

-- 查看当前设置
SELECT name, value FROM v$parameter WHERE name = 'audit_sys_operations';-- 修改设置(需要重启数据库)
ALTER SYSTEM SET audit_sys_operations=TRUE SCOPE=SPFILE;

2.4 审计记录存储

  • AUDIT_TRAIL=OS/XML 时:记录到 $ORACLE_HOME/rdbms/audit/ 目录下的 .aud 文件
  • AUDIT_TRAIL=DB/DB,EXTENDED 时:仍写入操作系统文件(不写入 SYS.AUD$)

2.5 典型记录内容

Thu May 15 10:23:45 2025 +08:00
LENGTH: "144"
ACTION: "CONNECT"
DATABASE USER: "/"
PRIVILEGE: "SYSDBA"
CLIENT USER: "oracle"
CLIENT TERMINAL: "pts/1"
STATUS: "0"
DBID: "1234567890"

三 生产环境最佳实践组合

3.1 高安全级别配置

ALTER SYSTEM SET audit_trail='DB,EXTENDED' SCOPE=SPFILE;
ALTER SYSTEM SET audit_sys_operations=TRUE SCOPE=SPFILE;
ALTER SYSTEM SET audit_file_dest='/u01/app/oracle/admin/ORCL/adump' SCOPE=SPFILE;

3.2 配套维护措施

-- 创建专用审计表空间
CREATE TABLESPACE audit_ts DATAFILE '+DATA' SIZE 2G AUTOEXTEND ON;-- 迁移审计表
ALTER TABLE sys.aud$ MOVE TABLESPACE audit_ts;
ALTER INDEX sys.I_AUD1 REBUILD TABLESPACE audit_ts;-- 设置自动清理任务
BEGINDBMS_AUDIT_MGMT.INIT_CLEANUP(audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_ALL,default_cleanup_interval => 24 /*小时*/);DBMS_AUDIT_MGMT.SET_LAST_ARCHIVE_TIMESTAMP(audit_trail_type => DBMS_AUDIT_MGMT.AUDIT_TRAIL_AUD_STD,last_archive_time => SYSTIMESTAMP-30);
END;
/

四 参数间关系与注意事项

  1. 依赖关系

    • AUDIT_SYS_OPERATIONS 的存储位置由 AUDIT_TRAIL 决定
    • AUDIT_TRAIL=NONE 时,AUDIT_SYS_OPERATIONS 仍可独立工作
  2. 性能影响

    • DB,EXTENDED 会记录完整SQL文本,对性能影响较大
    • 审计 SYSDBA 操作可能产生大量日志
  3. 存储管理

    • 使用 DB/DB,EXTENDED 时需定期维护 SYS.AUD$ 表
    • 建议每月至少清理一次30天前的审计记录
  4. 安全检查脚本

-- 检查关键审计配置
SELECT (SELECT value FROM v$parameter WHERE name = 'audit_trail') AS audit_trail,(SELECT value FROM v$parameter WHERE name = 'audit_sys_operations') AS audit_sys_ops,(SELECT COUNT(*) FROM dba_audit_trail WHERE timestamp > SYSDATE-1) AS audit_recs_24h,(SELECT bytes/1024/1024 FROM dba_segments WHERE owner='SYS' AND segment_name='AUD$') AS aud_table_size_mb
FROM dual;

通过合理配置这两个核心审计参数,可以实现对Oracle数据库活动的全面监控,特别是对特权操作的跟踪,是满足安全合规要求的基础配置。

http://www.xdnf.cn/news/12612.html

相关文章:

  • 仿真每日一练 | Workbench曲柄滑块机构刚体动力学分析
  • 跳转指令四维全解:从【call/jmp 】的时空法则到内存迷宫导航术
  • 数据库系统概论(十七)超详细讲解数据库规范化与五大范式(从函数依赖到多值依赖,再到五大范式,附带例题,表格,知识图谱对比带你一步步掌握)
  • 深入理解PHP安全漏洞:文件包含与SSRF攻击全解析
  • 在线汉字笔画练习工具(HTML文件版)
  • 【LLM-Agent】智能体的记忆缓存设计
  • 《DeepSeek R1-0528与ChatGPT o3对比分析》
  • 在边缘部署实时视觉应用程序
  • AdaFactor Optimizer 大模型训练优化器简介
  • 多线程2(Thread)
  • C++算法-动态规划2
  • 前端基础之《Vue(19)—状态管理》
  • 73 LV的使用(XFS文件系统)
  • CMA软件产品测试报告在哪申请?
  • Dify+Ollama搭建本地知识库
  • C/C++ 中附加包含目录、附加库目录与附加依赖项详解
  • 高精度滚珠导轨在医疗设备中的多元应用场景
  • 江科大读写内部flash到hal库实现
  • STTT(IF:40.8) 清华大学常智杰团队完成雾化外泌体治疗肺纤维化的I期临床试验
  • python学习打卡day46
  • DRV8833 电机控制芯片
  • STM32定时器的种类作用
  • 惠斯通电桥温度补偿优化解决方案
  • 《架构即未来》笔记
  • Cesium等高线
  • 新版双紫擒龙、紫紫红黄、动能二号源码指标源码公式讲解
  • 基于SmartPlayer的超低延迟RTSP播放器全平台开发实录
  • 【GESP真题解析】第 14 集 GESP 三级 2024 年 9 月编程题 1:平衡序列
  • MajicTryOn(基于wanvideo的虚拟试穿项目)
  • 单图像生成3D动画模型TripoSR的部署过程