命令详情
#核查用户列表确认用户身份标识是否具有唯一性;
SELECT USERNAME FROM DBA_USERS;
#核查用户配置信息或测试验证是否不存在空口令用户;
SELECT USERNAME, PASSWORD FROM DBA_USERS;
#核查用户鉴别信息是否具有复杂度要求并定期更换;
SELECT * FROM V$PARAMETER WHERE NAME= 'PWD_POLICY';
#核查是否配晋并启用了登录失败处理功能;
SELECT
so.NAME AS "达梦数据库用户名",--列名都需要查表,so 是 SYSOBJECTS 表的别名(通过 JOIN SYSOBJECTS so 指定)。
su.FAILED_NUM AS "失败次数限制",--su 是 SYSUSERS 表的别名(通过 FROM SYSUSERS su 指定)。
su.FAILED_ATTEMPS AS "失败尝试次数",
su.LOCK_TIME AS "锁定时间(min)"
FROM SYSUSERS su
JOIN SYSOBJECTS so ON su.ID = so.ID
WHERE so.SUBTYPE$ = 'USER';--这个subtype字段需要查表
#核查是否配置并启用了登录连接超时及自动退出功能;
SELECT PROFILE, RESOURCE_NAME, LIMIT
FROM DBA_PROFILES
WHERE RESOURCE_NAME IN ('CONNECT_TIME', 'CONNECT_IDLE_TIME');
#查看所有用户
SELECT USERNAME FROM DBA_USERS;
#查看系统/对象权限
SELECT * FROM DBA_SYS_PRIVS ORDER BY GRANTEE; //所有用户
SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE = 'SYSDBA'; //单个用户
#使用数据库数据库审计员查询审计开关当前的值
SELECT * FROM V$DM_INI WHERE PARA_NAME='ENABLE_AUDIT';
#开启ENABLE_AUDIT以及针对语句级查询后查看日志记录;
select * from V$AUDITRECORDS;
#查询审计记录是否进行保护,定期备份
SELECT * FROM V$PARAMETER WHERE NAME = 'AUDIT_FILE_FULL_MODE';
#查看所有账户的访问规则
Select A.allow_addr,A.not_allow_addr,A.allow_dt,A.not_allow_dt,B.USERNAME from SYSUSERS A ,DBA_USERS B WHERE A.ID=B.USER_ID;
#系统管理员可通过查询 V$PARAMETER 动态视图查询 ENABLE_ENCRYPT 的当前值
SELECT * FROM V$PARAMETER WHERE NAME='ENABLE_ENCRYPT';
#用户可通过 V$PARAMETER 动态视图查询 COMM_ENCRYPT_NAME 的当前值
SELECT * FROM V$PARAMETER WHERE NAME='COMM_ENCRYPT_NAME';
#查看是否指定全库加密
select SF_GET_ENCRYPT_NAME();
#查看表空间透明加密(与全库加密冲突,二者只能选择其一)
SELECT
TABLESPACE_NAME,
ENCRYPTED
FROM
DBA_TABLESPACES;
#查看表列透明加密
SELECT * FROM DBA_ENCRYPTED_COLUMNS;