达梦数据库安全设置
·
一、账号与授权
1.为应用单独分配账号
应为应用单独分配账号,避免应用使用dba用户,提高安全性。
查询:
select * from all_users;
select * from dba_users;
SELECT * FROM sysusers s ,dba_users d where s.id=d.user_id;
设置:
create user abc1 identified by password1;
create user abc2 identified by password2;
建立role,并给role授权,把role赋给不同的用户
2.删除或锁定无效账号
删除或锁定无效的账号,减少系统安全隐患。
查询:
select * from all_users;
select * from dba_users;
SELECT * FROM sysusers s ,dba_users d where s.id=d.user_id;
设置:
alter user username account lock;//锁定用户
drop user username cascade;//删除用户
3.检查DBA组用户
限制在DBA组中的操作系统用户数量,通常DBA组中只有DM安装用户。
查询:
通过/etc/passwd文件来检查是否有其它用户在DBA组中。
设置:
通过/etc/passwd文件来检查是否有其它用户在DBA组中。
删除用户:#userdel username;
锁定用户:
1) 修改/etc/shadow文件,用户名后加*LK*
2) 将/etc/passwd文件中的shell域设置成/bin/false
3) #passwd -l username
只有具备超级用户权限的使用者方可使用,#passwd -l username锁定用户,用#passwd –d username解锁后原有密码失效,登录需输入新密码,修改/etc/shadow能保留原有密码。
4.密码复杂度策略
对于采用静态口令进行认证的数据库,应满足复杂度策略要求
规则:
使用select * from v$dm_ini where para_name ='PWD_POLICY';或 SELECT * FROM V$PARAMETER WHERE NAME='PWD_POLICY';查询
当前value。应至少满足1、2、4、8,即15。同时select para_value from v$dm_ini where para_name='COMPATIBLE_MODE';不为1。
若COMPATIBLE_MODE=1 时,PWD_POLICY 的实际值均为 0。
0 无策略;
1 禁止与用户名相同;
2 口令长度不小于 9;
4 至少包含一个大写字母(A-Z);
8 至少包含一个数字(0-9);
16 至少包含一个标点符号(英文输入法状态下,除― 和空格外的所有符号)。
设置:
DBA用户使用sp_set_para_value(1,'PWD_POLICY',15)立即生效。
或sp_set_para_value(2,'PWD_POLICY',15)后,重启数据库
5.密码使用策略
对于采用静态口令认证技术的设备,应配置用户连续认证失败次数,锁定时间等策略
规则:
select d.username,
conn_idle_time as 会话空闲期分钟,
failed_num as 登陆失败次数 ,
life_time as 密码有效期天,
lock_time as 账号锁定期分钟,
grace_time as 密码宽限期天
from sysusers s ,
dba_users d
where s.id=d.user_id;
会话空闲期分钟:10
登陆失败次数:5
密码有效期天:90
账号锁定期分钟,: 10
密码宽限期天: 20
设置:
alter user user_name limit connect_idle_time 10,
failed_login_attemps 5,
password_life_time 90,
password_lock_time 10,
password_grace_time 20;
6.修改默认密码
更改数据库默认帐号的密码。
规则:
不能以用户名作为密码或使用默认密码的账户登陆到数据库。
设置:
1. 可通过下面命令来更改默认用户的密码:
ALTER USER user_name IDENTIFIED BY passwd;
2. 下面是默认用户密码列表:
SYSDBA/SYSDBA
SYSDBA/SYSDBA001
SYSSSO/SYSSSO
SYSAUDITOR/SYSAUDITOR
SYSDBO/
二、日志配置
1.数据库审计策略
根据业务要求制定数据库审计策略
查询:
SELECT * FROM V$DM_INI WHERE PARA_NAME='ENABLE_AUDIT';查询审计策略是否开启。
0:关闭;1:打开普通审计;2:打开普通审计和实时审计
设置:
SYSAUDITOR用户执行SP_SET_ENABLE_AUDIT(1);开启审计。
---对表开通审计,用户不限制,操作不管成功与否都审计
SP_audit_stmt('table','null','all');
---对视图开通审计,用户不限制,操作不管成功与否都审计
SP_audit_stmt('view','null','all');
---对存储过程开通审计,用户不限制,操作不管成功与否都审计
SP_audit_stmt('procedure','null','all');
select * from V$AUDITRECORDS;查询审计记录
三、保护
1.限制客户端登陆
可以通过sql设置用户登陆的ip地址,非设定的ip登陆时会报错提示无效的ip
查询:
select du.username,allow_addr from dba_users du,sysusers su
where du.user_id=su.id;
设置:
alter user "DMHR" allow_ip "127.0.0.1","23.24.0.26","2.24.6.*";
还可以通过防火墙开通数据库端口访问权限,限制客户端登陆数据库。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)