- 增加设置密码复杂度和登录失败处理功能
- 密码复杂度设置策略及方法
KingbaseES提供多角度的强化口令保护,通过会话级及全局级参数来实现用户口令管理。设置方法如下(以命令行为例):
- 设置密码的最小长度限制,0表示无限制,默认值为0
命令为:alter database TEST set password_length=6;
- 设置密码至少包含几个数字,0表示无限制,默认值为0
命令为:alter system set password_condition_digit=1;
- 设置密码至少包含几个字母,0表示无限制,默认值为0
命令为:alter system set password_condition_letter= 3;
- 设置密码至少包含几个特殊符号,0表示无限制,默认值为0
命令为:alter system set password_condition_punct=1;
- 设置密码是否可以是简单的常见单词,取值范围为ON/OFF,默认值为ON
命令为:alter system set password_condition_simple=off;
- 设置是否允许密码与用户名相同,取值范围为ON/OFF,默认值为ON
命令为:alter system set password_condition_user=off;
- 设置重复使用密码的最小时间间隔,以天为单位,0表示无限制,默认值为0
命令为:alter system set password_time=1;
- 设置允许密码输入错误最大次数,超过则封锁该用户,0表示无限制,默认值为0
命令为:alter system set error_user_connect_times=3;
- 设置被封锁用户的自动解锁时间,单位是分钟,超过时间间隔自动解除用户封锁,默认值为30
命令为:alter system set error_user_connect_interval=2;
-
- 整改内容
修改系统管理员SYSTEM密码:
密码包含字母、数字、特殊字符,不可以是常见单词或与用户名相同;
密码长度不少于10位;
密码输入错误5次后账户被禁用。
- 资源限制
- 资源设置策略及方法
KingbaseES数据库提供了多种用户资源限制功能,可以通过创建用户或者修改已有用户进行设置。设置方法如下(以命令行为例):
(1)指定用户账户的有效期时间,过了该时间后,用户账户不再有效。
新建一个有效期到2016-02-01的用户
CREATE USER new_user WITH VALID UNTIL '2016-02-01';
(2)指定用户密码的有效期时间。过了该时间后,用户的密码不再有效。
新建一个密码有效期到2015-02-01的用户
CREATE USER new_user WITH PASSWORD 'AA' PASSWORD EXPIRE '2016-02-01';
(3)CONNECT INTERVAL 指定每周几允许用户登录,0表示周日,1-6表示周一到周六。
新建一个可以在周一、周三、周四、周五登录的用户
CREATE USER new_user WITH CONNECT INTERVAL '1,3-5';
(4)CONNECT DURATION 指定用户的最大连接时间(单位为分钟),当连接时间超过DuralMaxTime时,连接断开,0表示不限制用户的连接时间,取值范围[0,2147483647],默认为无限制。
新建一个最大连接时间为2小时的用户
CREATE USER new_user WITH CONNECT DURATION 120;
(5)CONNECT IDLE TIME 指定用户闲置的最长时间(单位为分钟),当闲置时间超过IdelMaxTime时,连接断开,0表示不限制用户的闲置时间,取值范围[0,2147483647]。
新建一个最大空闲时间为2小时的用户
CREATE USER new_user WITH CONNECT IDLE TIME 120;
(6)CONNECTION LIMIT 指定用户的最大并发连接数目。-1表示无限制,取值范围[-1,2147483647],默认为无限制。
新建一个最大并发连接数为5的用户
CREATE USER new_user WITH CONNECTION LIMIT 5;
(7)IP LIMIT 指定允许用户登录的客户端IP地址。“*”表示无限制,默认为无限制。多个IP用“,”分割,如果限定为本机,请使用“127.0.0.1”。
新建一个只允许在‘192.168.4.10’登录的用户
CREATE USER new_user WITH IP LIMIT '192.168.4.10';