资讯动态

达梦数据库审计功能

发布时间:2026/8/19 23:23:40 来源:尧图企业网站定制
1.1审计的使用dm8可执行此命令打开普通审计功能用SYSAUDITOR用户操作SP_SET_ENABLE_AUDIT (1); --DM8SP_SET_ENABLE_AUDIT (0); 关闭审计DM7 sysdba用户修改SP_SET_PARA_VALUE(1,ENABLE_AUDIT,1);在普通版本中ENABLE_AUDIT 的缺省值为 0在安全版本中ENABLE_AUDIT 的缺省值为 2。过程执行完成后立即生效审计有三种取值0:关闭审计默认1:打开普通审计2:打开普通审计和实时审计---只要审计功能被启用系统级的审计记录就会产生---查看审计SELECT * FROM V$DM_INI WHERE PARA_NAMEENABLE_AUDIT;---修改审计路径AUD_PATH D:\dmdbms\data\DAMENG\aud/*AUDIT_FILE_FULL_MODEAUDIT_SPACE_LIMITAUDIT_MAX_FILE_SIZEAUDIT_KEEP_DAYS*/SP_SET_para_value(1,AUDIT_MAX_FILE_SIZE,1024);select * from V$AUDIT_SPACE;select * from V$AUDIT_FILE;select * from V$AUDITRECORDS a order by a.optime desc;---指定删除 2015-12-6 16:30:00 以前的普通审计文件。SP_DROP_AUDIT_FILE(2015-12-6 16:30:00,0);---保留最近30天的文件SP_DROP_AUDIT_FILE(sysdate-30,0);SP_AUDIT_OBJECT(UPDATE, SYSDBA, FENG2, EMP_TEST, SUCCESSFUL);---审计策略查询select sf_get_audit_typename(a.TYPE),sf_get_audit_levelname(a.LEVEL),sf_get_audit_whenevername(a.WHENEVER),a.* from sysauditor.sysaudit a;问题一dm7开启需要使用sysdba用户[dmdbadwmon:/home/dmdba]$ disql sysauditor/Dameng123服务器[LOCALHOST:5236]:处于普通打开状态登录使用时间: 2.808(毫秒)disql V7SQL SP_SET_PARA_VALUE(1,ENABLE_AUDIT,1);SP_SET_PARA_VALUE(1,ENABLE_AUDIT,1);[-5565]:没有修改INI配置参数的权限.已用时间: 0.626(毫秒). 执行号:0.SQL SP_SET_ENABLE_AUDIT (1);SP_SET_ENABLE_AUDIT (1);第1 行附近出现错误[-2207]:无法解析的成员访问表达式[SP_SET_ENABLE_AUDIT].已用时间: 0.199(毫秒). 执行号:0.问题二dm7无V$AUDIT_SPACE、V$AUDIT_FILE;视图SQL select * from V$AUDIT_SPACE;select * from V$AUDIT_SPACE;第1 行附近出现错误[-2106]:无效的表或视图名[V$AUDIT_SPACE].已用时间: 0.169(毫秒). 执行号:0.SQL select * from V$AUDIT_FILE;1.2审计工具使用1.2.1 dmaudtool (命令行工具)关键词说明缺省值是否必选项AFIL_PATH审计文件所在的路径无是OUT_PATH输出文件的生成路径,与OUT_SIZE配合使用若超过指定文件大小则会生成同名加序号后缀的文件无必选UPDATE_KEY更换密钥无必选OUT_SIZE输出文件的指定大小单位为兆M最小500最大65534默认为0表示不限制文件大小否DCR_INIDCR_INI路径用于连接ASM使用。当审计文件存在与ASM上使用若没有则忽略无否USERNAME对应审计记录中记录的用户名若指定则说明收集满足该用户名的审计记录若未指定则不考虑无否SCHNAME对应审计记录中记录的模式名若指定则说明收集满足该模式名的审计记录若未指定则不考虑无否OBJNAME对应审计记录中记录的对象名若指定则说明收集满足该对象名的审计记录若未指定则不考虑无否TIME_FROM对应审计记录中操作时间若指定则收集指定时间之后的审计记录若未指定则不考虑无否TIME_TO对应审计记录中操作时间若指定则收集指定时间之前的审计记录若未指定则不考虑无否R_SEP输出文件中行分隔符默认回车符\r\n否C_SEP输出文件中列分隔符默认|号符否HELP打印帮助信息无否例全量解析./dmaudtool \USERIDSYSAUDITOR/Dwtest_11192.168.1.103:5236 AFIL_PATH/dbdata/dmdata/DAMENG/audit OUT_PATH/dbdata/dmdata/DAMENG/audit/out/out1.txt按时间解析./dmaudtool \USERIDSYSAUDITOR/Dwtest_11192.168.1.103:5236 \AFIL_PATH/dbdata/dmdata/DAMENG/audit \TIME_FROM2026-08-12 14:00:00 \TIME_TO2026-08-12 14:20:00 \OUT_PATH/dbdata/dmdata/DAMENG/audit/out/out_time.txt定时任务示例#!/bin/bash # 脚本名称: incremental_audit_parse.sh # 功能: 增量解析达梦数据库审计日志 # --- 配置区 (请根据实际环境修改) --- DB_USERSYSAUDITOR # 数据库用户名 DB_PASSWORDSYSAUDITOR # 数据库密码 DB_HOST127.0.0.1 # 数据库主机地址 DB_PORT5236 # 数据库端口 DMAUDTOOL_PATH/home/dmdba/dm/dmdbms/bin/dmaudtool # dmaudtool 工具路径 AUDIT_DIR/dbdata/dmdata/DAMENG/audit # 审计日志存放目录 OUTPUT_DIR/dbdata/dmdata/DAMENG/audit/output # 解析结果输出目录 TIMESTAMP_FILE/home/dmdba/dm/dmdbms/bin/aud_last_run.time # 记录上次运行时间的文件 # ---------------------------------- # 1. 获取当前时间作为本次解析的结束时间 CURRENT_TIME$(date %Y-%m-%d %H:%M:%S) # 2. 获取上次解析的时间作为起始时间 if [ -f $TIMESTAMP_FILE ]; then LAST_TIME$(cat $TIMESTAMP_FILE) else # 如果是首次运行设置一个很早的时间以解析所有历史日志 LAST_TIME1970-01-01 00:00:00 fi # 3. 构造输出文件名 (包含时间范围便于追溯) OUTPUT_FILE${OUTPUT_DIR}audit_${LAST_TIME//[ :]/-}_to_${CURRENT_TIME//[ :]/-}.txt # 4. 确保输出目录存在 mkdir -p $OUTPUT_DIR # 5. 执行 dmaudtool 进行增量解析 echo $(date): 开始增量解析时间范围: $LAST_TIME 至 $CURRENT_TIME $DMAUDTOOL_PATH \ USERID${DB_USER}/${DB_PASSWORD}${DB_HOST}:${DB_PORT} \ AFIL_PATH$AUDIT_DIR \ OUT_PATH$OUTPUT_FILE \ TIME_FROM$LAST_TIME \ TIME_TO$CURRENT_TIME # 6. 检查执行结果并更新上次运行时间 if [ $? -eq 0 ]; then echo $CURRENT_TIME $TIMESTAMP_FILE echo $(date): 解析成功结果保存至 $OUTPUT_FILE else echo $(date): 解析失败请检查错误日志。 exit 1 fi根据时间增量解析审计日志1.2.2DBMS_AUDIT包PL/SQL方式)1.2.2.1 首次使用需要创建系统包SYSDBA用户创建SP_CREATE_SYSTEM_PACKAGES (1,DBMS_AUDIT);1.2.2.2 添加审计日志并分析(审计用户执行)SELECT filepath, begin_time, dbname FROM V$AUDIT_FILE;-- 查看审计日志文件CALL DBMS_AUDIT.ADD_AUDFILE(/dbdata/dmdata/DAMENG/audit/AUDIT_DWTEST1_XXX.log);--添加待分析审计日志文件CALL DBMS_AUDIT.START_AUD();--分析所有已加载的审计文件SESELECT * FROM V$AUDITRECORDS;--查看分析结果CALL DBMS_AUDIT.END_AUD();--结束分析会话1.2.3 analyze(图形化工具) 审计用户登录需要能打开图形化cd /home/dmdba/dm/dmdbms/tool/./analyzer或用windows版右键单击导航树中的“审计规则”节点在弹出的菜单中选择“新建审计分析规则”可打开如下图所示的新建审计分析规则窗口右键点击“审计规则”或一个具体的审计分析规则节点在弹出的菜单中选择“审计规则分析”弹出如下图所示审计规则分析窗口点击添加目录选择审计文件目录或者添加想要分析的审计日志文件或者双击“审计日志查看器”节点可打开如下图所示的条件设置窗口。添加需要查看的审计记录文件还可在窗口左侧的“选择项”中设置各种过滤条件之后点击“确定”将满足规则的审计记录以表格的形式显示出来达梦数据库 - 新一代大型通用关系型数据库 | 达梦在线服务平台

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价