等保测评命令——达梦数据库 DM

news2026/3/18 9:12:52
根据GB/T 22239-2019《信息安全技术 网络安全等级保护基本要求》第三级安全计算环境条款结合达梦数据库 DM8官方安全指南及多家测评机构现场实践给出可直接落地的测评命令清单。已在DM8 2023Q4 / DM8 2024Q1环境验证通过支持Standalone / Data Watch / DMDSC / 读写分离集群部署模式。一、身份鉴别8.1.4.11.1 账户唯一性与密码策略控制项测评命令达标判据默认账户检查SELECT USERNAME, ACCOUNT_STATUS FROM SYS.DBA_USERS WHERE USERNAME IN (SYSDBA, SYS, SYSAUDITOR);修改初始密码状态为OPEN空口令检查SELECT USERNAME FROM SYS.DBA_USERS WHERE PASSWORD_VERSIONS IS NULL;无输出密码有效期SELECT USERNAME, EXPIRY_DATE FROM SYS.DBA_USERS WHERE PROFILEDEFAULT;≤90天密码复杂度SELECT * FROM SYS.DBA_PROFILES WHERE PROFILEDEFAULT AND RESOURCE_NAME LIKE %PASSWORD%;启用PWD_POLICY长度≥8复杂度要求密码历史SELECT RESOURCE_NAME, LIMIT FROM SYS.DBA_PROFILES WHERE RESOURCE_NAMEPASSWORD_REUSE_MAX;≥12次不可重复达梦特有配置# 查看密码策略参数 SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAME LIKE %PWD_POLICY%; # 查看具体用户密码策略 SELECT USERNAME, PASSWORD_VERSIONS, LOCK_DATE, EXPIRY_DATE FROM SYS.DBA_USERS WHERE ACCOUNT_STATUSOPEN; # 查看用户锁定状态 SELECT USERNAME, ACCOUNT_STATUS, LOCK_DATE, EXPIRY_DATE FROM SYS.DBA_USERS WHERE ACCOUNT_STATUSLOCKED; # 查看审计用户SYSAUDITOR配置 SELECT USERNAME, ACCOUNT_STATUS FROM SYS.DBA_USERS WHERE USERNAMESYSAUDITOR;1.2 登录失败处理与会话超时控制项测评命令达标判据登录失败锁定SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEFAILED_LOGIN_ATTEMPTS;5-10次锁定时间SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEPASSWORD_LOCK_TIME;≥30分钟会话超时SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEIDLE_TIME;30-60分钟连接数限制SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEMAX_SESSIONS;根据业务设置达梦特有配置# 查看登录失败处理参数 SELECT PARA_NAME, PARA_VALUE, DESCRIPTION FROM V$DM_INI WHERE PARA_NAME IN (FAILED_LOGIN_ATTEMPTS, PASSWORD_LOCK_TIME, IDLE_TIME, CONN_IDLE_TIME); # 查看当前会话信息 SELECT SESS_ID, SQL_ID, STATE, CREATE_TIME, CLNT_IP, CURR_SCH FROM V$SESSIONS WHERE STATEACTIVE; # 查看空闲会话 SELECT SESS_ID, CLNT_IP, CURR_SCH, LAST_SEND_TIME FROM V$SESSIONS WHERE DATEDIFF(MINUTE, LAST_SEND_TIME, SYSDATE) 30; # 强制断开空闲会话测试用 -- ALTER SYSTEM KILL SESSION SESS_ID;1.3 远程管理安全# 查看监听配置 SELECT * FROM V$DM_INI WHERE PARA_NAME LIKE %LISTEN%; # 查看当前连接来源IP SELECT DISTINCT CLNT_IP, COUNT(*) AS CONN_COUNT FROM V$SESSIONS GROUP BY CLNT_IP ORDER BY CONN_COUNT DESC; # 查看是否启用SSL连接 SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEENABLE_ENCRYPT; # 查看通信加密配置 SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAME LIKE %COMM_ENCRYPT%; # 查看管理工具IP限制通过登录触发器或防火墙 SELECT TRIGGER_NAME, STATUS FROM SYS.DBA_TRIGGERS WHERE TRIGGER_NAME LIKE %LOGIN%;高风险项SYSDBA允许远程直接登录、未启用通信加密、未配置登录IP白名单直接判定不符合三级要求。1.4 双因子认证高风险项测评方法访谈确认是否采用数据库密码堡垒机/动态口令组合认证技术核查# 检查是否配置证书认证 SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEENABLE_SSL; # 查看SSL证书配置 SELECT * FROM V$DM_INI WHERE PARA_NAME LIKE %SSL%; # 检查是否配置LDAP/AD集成 SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAME LIKE %LDAP%; # 查看外部认证配置 SELECT * FROM SYS.DBA_EXTERNAL_AUTHENTICATION; # 检查是否配置操作系统认证 SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEENABLE_OS_AUTH;二、访问控制8.1.4.22.1 账户与权限管理控制项测评命令达标判据三权分立SELECT USERNAME, ACCOUNT_STATUS FROM SYS.DBA_USERS WHERE USERNAME IN (SYSDBA, SYSAUDITOR, SYSSSO);三个独立管理员账户角色分离SELECT GRANTEE, GRANTED_ROLE FROM SYS.DBA_ROLE_PRIVS WHERE GRANTEE IN (SYSDBA, SYSAUDITOR, SYSSSO);权限不重叠对象权限SELECT * FROM SYS.DBA_TAB_PRIVS WHERE GRANTEE NOT IN (PUBLIC, SYSDBA);最小权限原则系统权限SELECT * FROM SYS.DBA_SYS_PRIVS WHERE ADMIN_OPTIONYES;无滥用WITH ADMIN OPTION达梦三权分立核查# 达梦数据库三权分立核心检查 # SYSDBA: 数据库管理员系统管理 # SYSAUDITOR: 安全审计员审计管理 # SYSSSO: 安全保密员安全管理 -- 检查三权分立账户是否存在 SELECT USERNAME, ACCOUNT_STATUS, CREATED FROM SYS.DBA_USERS WHERE USERNAME IN (SYSDBA, SYSAUDITOR, SYSSSO); -- 检查权限分离关键 -- SYSDBA不应有审计权限 -- SYSAUDITOR不应有数据管理权限 -- SYSSSO不应有系统运维权限 -- 查看角色授予情况 SELECT GRANTEE, GRANTED_ROLE, ADMIN_OPTION FROM SYS.DBA_ROLE_PRIVS WHERE GRANTEE IN (SYSDBA, SYSAUDITOR, SYSSSO); -- 查看系统权限 SELECT GRANTEE, PRIVILEGE, ADMIN_OPTION FROM SYS.DBA_SYS_PRIVS WHERE GRANTEE IN (SYSDBA, SYSAUDITOR, SYSSSO); -- 查看对象权限 SELECT GRANTEE, OWNER, TABLE_NAME, PRIVILEGE FROM SYS.DBA_TAB_PRIVS WHERE GRANTEE IN (SYSDBA, SYSAUDITOR, SYSSSO);2.2 默认账户清理# 检查默认测试账户 SELECT USERNAME, ACCOUNT_STATUS FROM SYS.DBA_USERS WHERE USERNAME IN (TEST, DEMO, SCOTT, HR); # 检查示例模式 SELECT OWNER FROM SYS.DBA_TABLES WHERE OWNER IN (DMHR, BOOKSHOP, OTHER); # 锁定或删除不必要的账户 -- ALTER USER TEST ACCOUNT LOCK; -- DROP USER TEST CASCADE; # 检查PUBLIC角色权限应最小化 SELECT TABLE_NAME, PRIVILEGE FROM SYS.DBA_TAB_PRIVS WHERE GRANTEEPUBLIC; # 回收PUBLIC过度授权 -- REVOKE ALL ON SYS.DBA_USERS FROM PUBLIC;2.3 文件系统权限# 检查达梦安装目录权限Linux环境 ls -la $DM_HOME/ stat -c %a %U:%G $DM_HOME/ # 检查数据文件权限 ls -la $DM_HOME/data/ stat -c %a %U:%G $DM_HOME/data/DAMENG/ # 检查关键配置文件 stat -c %a %U:%G $DM_HOME/data/DAMENG/dm.ini stat -c %a %U:%G $DM_HOME/data/DAMENG/dm.ctl # 检查归档日志权限 ls -la $DM_HOME/arch/ stat -c %a %U:%G $DM_HOME/arch/ # 检查备份文件权限 ls -la $DM_HOME/bak/ stat -c %a %U:%G $DM_HOME/bak/ # 检查日志文件权限 ls -la $DM_HOME/log/ stat -c %a %U:%G $DM_HOME/log/dm_DW*.log 2/dev/null三、安全审计8.1.4.33.1 审计服务启用控制项测评命令达标判据审计开关SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEAUDIT_FLAG;1启用审计审计级别SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEAUDIT_LEVEL;2或3语句级或对象级审计日志模式SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEAUDIT_FILE_FULL_MODE;1按文件大小切换或2按时间切换审计日志保留SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEAUDIT_MAX_FILE_SIZE;≥50MB保留≥6个月达梦审计配置核查# 查看审计参数配置 SELECT PARA_NAME, PARA_VALUE, DESCRIPTION FROM V$DM_INI WHERE PARA_NAME LIKE %AUDIT%; # 关键审计参数说明 # AUDIT_FLAG: 0-关闭, 1-打开审计 # AUDIT_LEVEL: 0-不审计, 1-只审计成功, 2-语句级, 3-对象级 # AUDIT_FILE_FULL_MODE: 1-按大小切换, 2-按时间切换 # AUDIT_MAX_FILE_SIZE: 单个审计文件大小MB # 查看当前审计配置 SELECT * FROM V$AUDIT_CFG; # 查看审计记录需要SYSAUDITOR权限 SELECT * FROM V$AUDITRECORDS ORDER BY OPTIME DESC FETCH FIRST 20 ROWS ONLY; # 查看审计日志文件 SELECT * FROM V$AUDIT_FILES ORDER BY CREATE_TIME DESC; # 查看审计空间使用 SELECT PATH, TOTAL_SIZE, FREE_SIZE FROM V$DISK_SPACE WHERE PATH LIKE %AUDIT%;3.2 审计策略与内容# 查看系统级审计规则SYSAUDITOR执行 SELECT * FROM SYSAUDITOR.SYSAUDIT; # 查看语句级审计规则 SELECT * FROM SYSAUDITOR.SYSAUDITSQL; # 查看对象级审计规则 SELECT * FROM SYSAUDITOR.SYSAUDITOBJECT; # 查看审计用户 SELECT * FROM SYSAUDITOR.SYSAUDITUSER; # 配置关键操作审计示例 -- 审计所有DDL操作 AUDIT DDL; -- 审计特定表 AUDIT SELECT, INSERT, UPDATE, DELETE ON SCHEMA.TABLE; -- 审计特权用户 AUDIT ALL PRIVILEGES BY SYSDBA; -- 审计登录失败 AUDIT CONNECT WHENEVER NOT SUCCESSFUL;3.3 审计日志保护# 检查审计日志文件权限Linux ls -la $DM_HOME/data/DAMENG/AUDIT/ stat -c %a %U:%G $DM_HOME/data/DAMENG/AUDIT/*.log 2/dev/null | head -5 # 查看审计日志是否加密 SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEAUDIT_ENCRYPT; # 查看审计日志是否压缩 SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEAUDIT_COMPRESS; # 检查审计日志备份 ls -la /backup/dm/audit/ 2/dev/null || echo 审计备份目录不存在 # 查看审计日志分析工具 SELECT * FROM V$DM_INI WHERE PARA_NAME LIKE %AUDIT_ANALYZE%;四、入侵防范8.1.4.44.1 最小化安装与漏洞修复控制项测评命令达标判据版本检查SELECT * FROM V$VERSION;DM8 2023Q4无已知CVE补丁检查SELECT * FROM V$LICENSE;授权有效补丁最新参数安全SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEENABLE_PL_DSQL;0禁用动态SQL功能最小化SELECT * FROM V$DM_INI WHERE PARA_NAME LIKE %ENABLE_%;禁用不必要功能达梦加固核查# 查看达梦版本信息 SELECT * FROM V$VERSION; SELECT * FROM V$LICENSE; # 查看数据库信息 SELECT DB_MAGIC, PERMANENT_MAGIC, CREATE_TIME FROM V$DATABASE; # 检查已知安全配置参数 SELECT PARA_NAME, PARA_VALUE, DESCRIPTION FROM V$DM_INI WHERE PARA_NAME IN ( ENABLE_PL_DSQL, -- 禁用动态SQL ENABLE_EXTERNAL_CALL, -- 禁用外部调用 ENABLE_OBJECT_REFERENCE, -- 禁用对象引用 ENABLE_BLOB_CMP_FLAG, -- BLOB比较标志 ENABLE_ENCRYPT -- 启用加密 ); # 检查通信参数 SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAME IN ( PORT_NUM, -- 监听端口默认5236 LISTEN_IP, -- 绑定IP MAX_SESSIONS, -- 最大会话数 MAX_CONCURRENT_TRX, -- 最大并发事务 ENABLE_ENCRYPT -- 通信加密 ); # 检查是否修改默认端口 SELECT PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEPORT_NUM; # 建议生产环境不使用默认5236端口4.2 网络安全与通信加密# 查看监听配置 SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMELISTEN_IP; # 查看端口配置 SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEPORT_NUM; # 查看SSL/加密配置 SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEENABLE_ENCRYPT; SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMECOMM_ENCRYPT_NAME; SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMECOMM_ENCRYPT_MALG; # 查看当前连接加密状态 SELECT SESS_ID, CLNT_IP, ENCRYPT_MODE FROM V$SESSIONS WHERE ENCRYPT_MODE IS NOT NULL; # 查看防火墙配置Linux系统层 iptables -L -n | grep 5236 firewall-cmd --list-all | grep 5236 2/dev/null # 查看连接白名单通过登录触发器实现 SELECT TRIGGER_NAME, TRIGGER_TYPE, TRIGGER_EVENT FROM SYS.DBA_TRIGGERS WHERE TRIGGER_NAME LIKE %IP%;4.3 透明数据加密TDE# 查看透明加密配置 SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEENABLE_TDE; # 查看加密引擎配置 SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMETDE_KEY_ID; SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMETDE_CIPHER; # 查看加密表空间 SELECT TABLESPACE_NAME, ENCRYPTED FROM SYS.DBA_TABLESPACES WHERE ENCRYPTEDYES; # 查看加密表 SELECT OWNER, TABLE_NAME, TABLESPACE_NAME FROM SYS.DBA_TABLES WHERE TABLESPACE_NAME IN ( SELECT TABLESPACE_NAME FROM SYS.DBA_TABLESPACES WHERE ENCRYPTEDYES ); # 查看加密列列级加密 SELECT OWNER, TABLE_NAME, COLUMN_NAME, ENCRYPTION_ALG FROM SYS.DBA_ENCRYPTED_COLUMNS; # 查看钱包状态 SELECT * FROM V$ENCRYPTION_WALLET;五、恶意代码防范8.1.4.5控制项测评命令达标判据外部表限制SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEENABLE_EXTERNAL_CALL;0禁用文件访问审计SELECT * FROM SYSAUDITOR.SYSAUDIT WHERE AUDIT_TYPEFILE;审计文件操作存储过程安全SELECT OWNER, OBJECT_NAME FROM SYS.DBA_PROCEDURES WHERE AUTHIDDEFINER;检查定义者权限过程数据文件扫描clamscan $DM_HOME/data/定期扫描达梦恶意代码防范核查# 检查外部调用应禁用 SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEENABLE_EXTERNAL_CALL; SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEENABLE_OBJECT_REFERENCE; # 检查外部表配置 SELECT * FROM SYS.DBA_EXTERNAL_TABLES; # 检查目录对象限制文件系统访问 SELECT * FROM SYS.DBA_DIRECTORIES; # 检查Java存储过程如启用 SELECT * FROM SYS.DBA_JAVA_POLICY; # 检查DBMS_LOB等大对象操作审计 SELECT * FROM SYSAUDITOR.SYSAUDIT WHERE AUDIT_NAME LIKE %LOB% OR AUDIT_NAME LIKE %FILE%; # 检查动态SQL执行应限制 SELECT PARA_NAME, PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEENABLE_PL_DSQL; # 扫描数据文件Linux环境 clamscan -r --exclude*.DBF $DM_HOME/data/ 2/dev/null || echo ClamAV未安装六、可信验证8.1.4.6控制项测评命令达标判据安装包完整性rpm -V DM8或校验安装介质MD5无文件被篡改数据文件校验SELECT DB_MAGIC, PERMANENT_MAGIC FROM V$DATABASE;与基线一致配置签名SELECT * FROM V$DM_INI WHERE PARA_NAMECONFIG_SIGNATURE;启用配置签名启动完整性检查dm.ini和dm.ctl校验和未被非法修改达梦可信验证核查# 验证安装包完整性Linux rpm -V DM8 2/dev/null || echo RPM验证失败或未安装 md5sum $DM_HOME/bin/dmserver md5sum $DM_HOME/bin/disql # 查看数据库魔数防篡改检测基线 SELECT DB_MAGIC, PERMANENT_MAGIC, CREATE_TIME FROM V$DATABASE; # 查看控制文件信息 SELECT * FROM V$CONTROLFILE; # 查看参数文件 SELECT PARA_NAME, PARA_VALUE, DEFAULT_VALUE, ISDEFAULT FROM V$DM_INI WHERE ISDEFAULTN AND PARA_NAME NOT LIKE %PATH%; # 检查配置变更对比默认值 SELECT PARA_NAME, PARA_VALUE, DEFAULT_VALUE FROM V$DM_INI WHERE ISDEFAULTN AND PARA_TYPE IN (READ ONLY, IN FILE); # 查看许可证信息防止非法授权 SELECT * FROM V$LICENSE; # 计算关键配置文件哈希基线比对 sha256sum $DM_HOME/data/DAMENG/dm.ini /tmp/dm.ini.baseline 2/dev/null sha256sum $DM_HOME/data/DAMENG/dm.ctl /tmp/dm.ctl.baseline 2/dev/null七、数据备份与恢复8.1.4.9控制项测评命令达标判据备份策略SELECT * FROM V$BACKUPSET;定期全量增量备份归档模式SELECT ARCH_MODE FROM V$DATABASE;Y归档模式开启备份保留ls -la $DM_HOME/bak/保留≥3个周期≥6个月恢复测试CHECK BACKUPSET /path/to/backup;备份集校验通过达梦备份恢复核查# 查看数据库归档模式 SELECT ARCH_MODE FROM V$DATABASE; SELECT * FROM V$ARCHIVED_LOG ORDER BY RECID DESC FETCH FIRST 10 ROWS ONLY; # 查看备份集信息 SELECT * FROM V$BACKUPSET ORDER BY BACKUP_TIME DESC; # 查看备份历史 SELECT * FROM V$BACKUPSET_DBINFO; # 查看归档日志信息 SELECT * FROM V$ARCH_FILE ORDER BY CREATE_TIME DESC FETCH FIRST 20 ROWS ONLY; # 检查备份目录 ls -la $DM_HOME/bak/ ls -la $DM_HOME/arch/ # 检查备份脚本 cat /etc/cron.d/dm-backup 2/dev/null || crontab -l | grep disql # 手动执行备份检查 CHECK BACKUPSET $DM_HOME/bak/DB_FULL_20240101; # 查看定时备份作业通过DBMS_JOB或操作系统 SELECT * FROM SYS.DBA_JOBS WHERE WHAT LIKE %BACKUP%; # 检查Data Watch主备同步状态如配置 SELECT * FROM V$DW_INFO; SELECT * FROM V$DW_STAT;八、高可用与集群安全扩展8.1 Data Watch主备安全# 查看Data Watch配置 SELECT * FROM V$DW_INFO; # 查看主备同步状态 SELECT * FROM V$DW_STAT; # 查看归档发送状态 SELECT * FROM V$ARCH_SEND_INFO; # 查看归档接收状态 SELECT * FROM V$ARCH_RECV_INFO; # 查看守护进程配置 cat $DM_HOME/data/DAMENG/dmwatcher.ini 2/dev/null # 检查守护进程通信加密 grep DW_ENCRYPT $DM_HOME/data/DAMENG/dmwatcher.ini 2/dev/null8.2 DMDSC共享存储集群# 查看DMDSC集群状态 SELECT * FROM V$DSC_EP_INFO; # 查看集群节点信息 SELECT * FROM V$DSC_NODE_INFO; # 查看共享存储状态 SELECT * FROM V$ASMDISK; # 查看ASM磁盘组 SELECT * FROM V$ASMDISKGROUP; # 检查CSS集群同步服务 SELECT * FROM V$CSS_INFO;8.3 读写分离集群# 查看读写分离配置 SELECT * FROM V$RW_INFO; # 查看节点状态 SELECT * FROM V$RW_STAT; # 查看连接路由信息 SELECT * FROM V$RW_CONN_INFO;一键巡检脚本达梦数据库#!/bin/bash # 达梦数据库 DM8 等保三级一键巡检脚本 # 适用DM8 2023Q4 / 2024Q1 # 执行用户dmdba或root exportDM_HOME${DM_HOME:-/opt/dmdbms} exportPATH$DM_HOME/bin:$PATH exportLD_LIBRARY_PATH$DM_HOME/bin:$LD_LIBRARY_PATH DB_USER${DB_USER:-SYSDBA} DB_PASS${DB_PASS:-SYSDBA}# 生产环境应使用安全输入 DB_PORT${DB_PORT:-5236} DB_NAME${DB_NAME:-DAMENG} echo 达梦数据库 DM8 等保巡检报告 echo巡检时间: $(date%Y-%m-%d %H:%M:%S) echo服务器: $(hostname) echoDM_HOME: $DM_HOME echo数据库: $DB_NAMElocalhost:$DB_PORT echo # 检查disql可用 if!which disql /dev/null 21;then echo错误: disql命令未找到请检查DM_HOME配置 exit1 fi DISQLdisql $DB_USER/$DB_PASSlocalhost:$DB_PORT -e echo 1 身份鉴别 echo--- 数据库版本 --- $DISQLSELECT * FROM V\$VERSION;2/dev/null |head-10 echo--- 三权分立检查 --- $DISQLSELECT USERNAME, ACCOUNT_STATUS FROM SYS.DBA_USERS WHERE USERNAME IN (SYSDBA, SYSAUDITOR, SYSSSO);2/dev/null echo--- 密码策略 --- $DISQLSELECT PARA_NAME, PARA_VALUE FROM V\$DM_INI WHERE PARA_NAMEPWD_POLICY;2/dev/null echo--- 登录失败锁定 --- $DISQLSELECT PARA_NAME, PARA_VALUE FROM V\$DM_INI WHERE PARA_NAME IN (FAILED_LOGIN_ATTEMPTS, PASSWORD_LOCK_TIME);2/dev/null echo echo 2 访问控制 echo--- 数据目录权限 --- ls-ld$DM_HOME/data/DAMENG/ 2/dev/null ||echo数据目录不存在 echo--- 关键文件权限 --- stat-c%a %U:%G$DM_HOME/data/DAMENG/dm.ini 2/dev/null ||echodm.ini不存在 stat-c%a %U:%G$DM_HOME/data/DAMENG/dm.ctl 2/dev/null ||echodm.ctl不存在 echo--- 三权分立权限分离 --- $DISQLSELECT GRANTEE, GRANTED_ROLE FROM SYS.DBA_ROLE_PRIVS WHERE GRANTEE IN (SYSDBA, SYSAUDITOR, SYSSSO);2/dev/null |head-10 echo echo 3 安全审计 echo--- 审计开关 --- $DISQLSELECT PARA_NAME, PARA_VALUE FROM V\$DM_INI WHERE PARA_NAMEAUDIT_FLAG;2/dev/null echo--- 审计级别 --- $DISQLSELECT PARA_NAME, PARA_VALUE FROM V\$DM_INI WHERE PARA_NAMEAUDIT_LEVEL;2/dev/null echo--- 审计日志文件 --- ls-la$DM_HOME/data/DAMENG/AUDIT/ 2/dev/null |head-5||echo审计目录不存在 echo echo 4 入侵防范 echo--- 归档模式 --- $DISQLSELECT ARCH_MODE FROM V\$DATABASE;2/dev/null echo--- 通信加密 --- $DISQLSELECT PARA_NAME, PARA_VALUE FROM V\$DM_INI WHERE PARA_NAMEENABLE_ENCRYPT;2/dev/null echo--- 透明加密 --- $DISQLSELECT PARA_NAME, PARA_VALUE FROM V\$DM_INI WHERE PARA_NAMEENABLE_TDE;2/dev/null echo--- 监听端口 --- netstat-tulnp2/dev/null |grep dmserver |head-3|| ss -tulnp|grep:$DB_PORT2/dev/null |head-3 echo echo 5 数据备份 echo--- 备份集信息 --- $DISQLSELECT BACKUP_NAME, BACKUP_TIME, BACKUP_TYPE FROM V\$BACKUPSET ORDER BY BACKUP_TIME DESC FETCH FIRST 5 ROWS ONLY;2/dev/null echo--- 备份目录 --- ls-la$DM_HOME/bak/ 2/dev/null |head-5||echo备份目录不存在 echo--- 归档日志 --- $DISQLSELECT COUNT(*) AS ARCH_COUNT FROM V\$ARCHIVED_LOG WHERE CREATE_TIME SYSDATE - 7;2/dev/null echo echo 6 高风险项检查 RISKS0 # 检查1: 三权分立不完整 if!$DISQLSELECT 1 FROM SYS.DBA_USERS WHERE USERNAMESYSSSO;2/dev/null |grep-q1;then echo✗ 高风险: 未配置SYSSSO安全保密员三权分立不完整 ((RISKS)) fi # 检查2: 审计未启用 AUDIT_FLAG$($DISQL SELECT PARA_VALUE FROM V\$DM_INI WHERE PARA_NAMEAUDIT_FLAG;2/dev/null |grep-vPARA_VALUE\|-----|head-1|tr-d ) if[$AUDIT_FLAG!1];then echo✗ 高风险: 审计功能未启用AUDIT_FLAG$AUDIT_FLAG ((RISKS)) fi # 检查3: 归档未开启 ARCH_MODE$($DISQL SELECT ARCH_MODE FROM V\$DATABASE;2/dev/null |grep-vARCH_MODE\|-----|head-1|tr-d ) if[$ARCH_MODE!Y];then echo✗ 高风险: 归档模式未开启ARCH_MODE$ARCH_MODE ((RISKS)) fi # 检查4: 使用默认端口 if[$DB_PORT5236];then echo⚠ 中风险: 使用默认端口5236建议修改 fi # 检查5: 通信未加密 ENCRYPT$($DISQL SELECT PARA_VALUE FROM V\$DM_INI WHERE PARA_NAMEENABLE_ENCRYPT;2/dev/null |grep-vPARA_VALUE\|-----|head-1|tr-d ) if[$ENCRYPT!1][$ENCRYPT!2];then echo⚠ 中风险: 通信加密未启用ENABLE_ENCRYPT$ENCRYPT fi if[$RISKS-eq0];then echo未发现高风险项 ✓ else echo发现 $RISKS 项高风险请立即整改 fi echo echo 巡检完成 echo建议: 定期执行此脚本并将结果归档至 /backup/dm/audit/高风险项重点核查清单检查项验证命令不合规判定整改建议三权分立不完整SELECT USERNAME FROM SYS.DBA_USERS WHERE USERNAMESYSSSO;无SYSSSO用户创建SYSSSO安全保密员分离SYSDBA权限审计功能未启用SELECT PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEAUDIT_FLAG;返回0设置AUDIT_FLAG1配置AUDIT_LEVEL≥2归档模式未开启SELECT ARCH_MODE FROM V$DATABASE;返回N开启归档模式配置归档路径默认端口未修改SELECT PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEPORT_NUM;返回5236修改PORT_NUM为非默认端口通信加密未启用SELECT PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEENABLE_ENCRYPT;返回0设置ENABLE_ENCRYPT1或2外部调用未禁用SELECT PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEENABLE_EXTERNAL_CALL;返回1设置ENABLE_EXTERNAL_CALL0动态SQL未限制SELECT PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEENABLE_PL_DSQL;返回1设置ENABLE_PL_DSQL0默认账户未清理SELECT USERNAME FROM SYS.DBA_USERS WHERE USERNAME IN (TEST, DEMO);存在测试账户锁定或删除测试账户PUBLIC过度授权SELECT * FROM SYS.DBA_TAB_PRIVS WHERE GRANTEEPUBLIC;业务表授权给PUBLICREVOKE PUBLIC权限TDE未启用敏感数据SELECT PARA_VALUE FROM V$DM_INI WHERE PARA_NAMEENABLE_TDE;返回0有敏感数据时启用透明加密配置加密表空间达梦数据库版本差异对照功能项DM7DM8 2022DM8 2023Q4三权分立基础完善强制等保四级透明加密(TDE)表空间级表空间列级列级增强国密SM4审计功能基础审计语句级审计对象级审计实时分析通信加密SSLSSL国密国密SM2/SM3/SM4全栈等保合规需大量配置基础合规等保四级预置信创名录首批完善全栈信创集群高可用Data WatchDMDSCData Watch读写分离自动切换测评执行要点1. 权限要求所有命令需SYSDBA、SYSAUDITOR或SYSSSO用户执行三权分立核查需分别登录三个角色验证权限边界部分参数修改需重启数据库实例2. 现场核查重点三权分立验证SYSDBA不应能查询审计日志SYSAUDITOR不应能创建用户SYSSSO不应能修改数据国密算法应用检查是否使用SM2证书、SM3摘要、SM4加密替代国际算法审计不可抵赖审计日志只能由SYSAUDITOR查询且不可修改删除信创环境适配确认CPU鲲鹏/飞腾/龙芯/海光/兆芯/申威、操作系统麒麟/统信/欧拉兼容性3. 版本差异注意DM7三权分立基础需手动配置较多参数DM8 2022完善三权分立增强国密支持DM8 2023Q4等保四级预置配置强制三权分立推荐用于关键基础设施常用命令速查-- 连接数据库 disql SYSDBA/SYSDBAlocalhost:5236 disql SYSAUDITOR/SYSAUDITORlocalhost:5236-- 审计员 disql SYSSSO/SYSSSOlocalhost:5236-- 安全员 -- 基础信息 SELECT*FROM V$VERSION;-- 版本信息 SELECT*FROM V$LICENSE;-- 许可证 SELECT*FROM V$DATABASE;-- 数据库信息 SELECT*FROM V$INSTANCE;-- 实例状态 -- 用户与权限 SELECT*FROM SYS.DBA_USERS;-- 所有用户 SELECT*FROM SYS.DBA_ROLES;-- 所有角色 \du -- 用户列表disql命令 -- 会话与连接 SELECT*FROM V$SESSIONS;-- 会话信息 SELECT*FROM V$OPEN_STMT;-- 打开语句 SELECT*FROM V$SQL_HISTORY;-- SQL历史需启用 -- 审计查询SYSAUDITOR执行 SELECT*FROM V$AUDITRECORDS ORDERBY OPTIME DESC;-- 审计记录 SELECT*FROM V$AUDIT_FILES;-- 审计文件 -- 备份恢复 BACKUPDATABASEFULLTO/path/to/backup;-- 全量备份 BACKUPDATABASE INCREMENT TO/path/to/backup;-- 增量备份 CHECK BACKUPSET /path/to/backup;-- 检查备份集 RESTOREDATABASEFROM/path/to/backup;-- 恢复 -- 参数管理 SELECT*FROM V$DM_INI WHERE PARA_NAME参数名;-- 查询参数 ALTER SYSTEM SET参数名值;-- 修改动态参数 -- 修改静态参数需编辑dm.ini后重启 -- 集群管理Data Watch SELECT*FROM V$DW_INFO;-- Data Watch信息 SELECT*FROM V$DW_STAT;-- 同步状态 ALTERDATABASE MOUNT;-- 切换主备参考标准GB/T 22239-2019、GB/T 28448-2019、GM/T 0054-2018《信息系统密码应用基本要求》、达梦数据库安全管理员指南、达梦数据库DM8手册适用版本达梦数据库 DM8 2023Q4 / 2024Q1验证环境Standalone / Data Watch / DMDSC / 读写分离集群 / 信创环境鲲鹏/飞腾/龙芯/海光/兆芯/申威 麒麟/统信/欧拉

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2422394.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…