甲骨文认证体系
Vmware认证体系
AWS亚马逊
阿里云认证体系
红帽认证体系
ZStack云计算认证体系
思科认证体系
华为认证体系
CDA数据分析师认证
达梦认证体系
麒麟
定制化课程
达梦数据库课程干货分享达梦数据库审计设置
发布日期:2020-08-26 09:28:26阅读次数:

普通版和安全版的区别:安全版本在普通版本的基础上,还提供“四权分立”安全机制和强制访问控制安全管理功能。


1、用户识别与标记

PRIV_FLAG:启用四权分立。仅在安全版本下可见和可设置 。四权分立新增数据库对象操作员账户 SYSDBO,其缺省口令为 SYSDBO

SYSSSO用户可以制定安全策略,创建安全标记。

口令策略:

 PWD_POLICY:

0 无策略

1 禁止与用户名相同

2 口令长度不小于 9

4 至少包含一个大写字母(A-Z)

8 至少包含一个数字(0-9)

16 至少包含一个标点符号(英文输入法状态下,除“和空格外的所有符号)

设置密码策略:SP_SET_PARA_VALUE(1,'PWD_POLICY',8);

禁用角色:SP_SET_ROLE('BOOKSHOP_ROLE1',0);


2、审计

2.1、审计级别说明

DM 允许在三个级别上进行审计设置:

系统级:系统的启动与关闭,此级别的审计无法也无需由用户进行设置,只要审计开关打开就会自动生成对应审计记录

语句级:导致影响特定类型数据库对象的特殊SQL或语句组的审计。如 AUDIT TABLE 将审计 CREATE TABLE、ALTER TABLE 和 DROP TABLE 等语句

对象级:审计作用在特殊对象上的语句。如 test 表上的 INSERT 语句


2.2、审计开关

审计开关由 DM 的 INI 参数 ENABLE_AUDIT 控制,有三种取值:

0:关闭审计

1:打开普通审计

2:打开普通审计和实时审计

通过系统过程 SP_SET_PARA_VALUE 重新设置 ENABLE_AUDIT 的值,ENABLE_AUDIT 为动态 INI 参数:SP_SET_PARA_VALUE (1,’ENABLE_AUDIT’,1)

开启审计:

SELECT * FROM V$PARAMETER WHERENAME=’ENABLE_AUDIT’;

dm.ini文件中的参数ENABLE_AUDIT=1(安全版可以设置为2)


2.3、审计相关视图

审计设置存放于 DM 字典表 SYSAUDIT 中,进行一次审计设置就在 SYSAUDIT 中增加一条对应的记录:

SELECT * FROM SYSAUDITOR.SYSAUDIT;



审计记录的具体内容存在在V$AUDITRECORDS视图中:

select * from SYSAUDITOR.V$AUDITRECORDS ;




例 1,对用户 USER2 进行的表的修改和删除进行审计,不管失败和成功。

SP_AUDIT_STMT('UPDATE TABLE', 'USER2','ALL');

SP_AUDIT_STMT('DELETE TABLE', 'USER2','ALL');


例2,取消对表的创建、修改和删除的审计。

SP_NOAUDIT_STMT('TABLE', 'NULL', 'ALL');


例3,对 SYSDBA 对表 PERSON.ADDRESS 进行的添加和修改的成功操作进行审计。

SP_AUDIT_OBJECT('INSERT', 'SYSDBA','PERSON', 'ADDRESS', 'SUCCESSFUL');

SP_AUDIT_OBJECT('UPDATE', 'SYSDBA','PERSON', 'ADDRESS', 'SUCCESSFUL');


例4,取消对 SYSDBA 对表 PERSON.ADDRESS 进行的添加和修改的成功操作的审计。

SP_NOAUDIT_OBJECT('INSERT', 'SYSDBA','PERSON', 'ADDRESS', 'SUCCESSFUL');

SP_NOAUDIT_OBJECT('UPDATE', 'SYSDBA','PERSON', 'ADDRESS', 'SUCCESSFUL');

SP_NOAUDIT_STMT

对某个所用户进行的select操作审计:

SP_AUDIT_OBJECT('SELECT','NULL','TEST','TABLE1','ALL');


2.4、具体审计设置

登录用户的审计:

单个用户,对SYSAUDITOR用户的登录操作进行记录,不管是否登陆成功:

SP_AUDIT_STMT('CONNECT', 'SYSAUDITOR','ALL');

对所有用户,对所有用户的登录操作进行记录,不管是否登陆成功:

SP_AUDIT_STMT('CONNECT', 'NULL', 'ALL');

查询登录记录:

select * from SYSAUDITOR.V$AUDITRECORDS ;



对所有用户对test.table1表进行的select操作审计:

SP_AUDIT_OBJECT('SELECT','NULL','TEST','TABLE1','ALL');

对sysdba用户对test.table1表进行的select操作审计:

SP_AUDIT_OBJECT('SELECT','SYSDBA','TEST','TABLE1','ALL');

对 SYSDBA 对表 PERSON.ADDRESS 的 ADDRESS1 列进行的修改成功的操作进行审计:

SP_AUDIT_OBJECT('UPDATE','SYSDBA','PERSON','ADDRESS','ADDRESS1','SUCCESSFUL');


3、审计文件管理

M 审计信息存储在审计文件中。审计文件存放在数据库的 SYSTEM_PATH 指定的路径,即数据库所在路径。审计文件命名格式为“AUDIT_GUID_创建时间.log”,其中“GUID”为DM 给定的一个唯一值。


审计文件的大小可以通过 DM 的 INI 参数 AUDIT_MAX_FILE_SIZE 指定。当单个审计文件超过指定大小时,系统会自动切换审计文件,自动创建新的审计文件,审计记录将写入新的审计文件中。AUDIT_MAX_FILE_SIZE 为动态系统级参数,缺省为 100M,DBA用户可通过系统过程 SP_SET_PARA_VALUE 对其进行动态修改,有效值范围为 1~4096M。


通过设置 DM 的 INI 参数 AUDIT_FILE_FULL_MODE 进行配置。当将AUDIT_FILE_FULL_MODE 置为 1 时,将删除最老的审计文件,直至有足够的空间创建新审计文件;当将AUDIT_FILE_FULL_MODE 置为 2 时,将不再写审计记录,默认值为 1。AUDIT_FILE_FULL_MODE 为静态参数,可通过系统过程SP_SET_PARA_VALUE 进行修改,但是修改需要重新启动 DM 数据库服务器才能生效。


指定删除 2015-12-616:30:00 以前的普通审计文件。

SP_DROP_AUDIT_FILE('2015-12-616:30:00',0);


上海腾科教育科技有限公司聚焦ICT人才培养和教育服务、培养数字化时代的新型ICT人才、促进良性的ICT人才生态发展,提供面授教育、在线教育、IT人才培养与就业、高校专业共建与实验室建设、企业人才定制培养,以及教育科技领域内的技术开发、咨询、服务以及解决方案,专注高校ICT课程课件研发、基于华为公有云的云实验实训平台建设,致力于ICT技术在高等院校的引进、开发和推广,是一家全国性的专业ICT行业技术认证服务公司。

腾科教育是华为授权的培训合作伙伴,专业提供华为ICT技术架构认证、平台与服务认证、行业服务认证等华为职业认证服务,连续多年荣获华为年度最佳合作伙伴贡献奖、华为优秀战略合作伙伴、上海HCIE精英俱乐部伙伴,连续多年举办腾科技术嘉年华华为专场,并协办华为ICT大赛、华为生态伙伴精英赛伙伴赛分赛场、华为人才双选会上海场等活动和赛事,提供面向华为生态合作伙伴和ICT学员的人才供需双选平台及ICT学员就业通道,培养ICT行业所需创新型、融合型人才。