关键字:
安全;口令有效期;人大金仓;KingbaseES
概述
KingbaseES 的用户管理中含有口令有效期这一属性,用户密码过期检查就是通过设置用户密码的有效期,在用
户密码过期后限制用户登录数据库,并输入新密码的功能。
KingbaseES 通过插件的方式来进行用户密码过期检查。这种方式更为灵活,当数据库的实用场景需要进行用户
密码过期检查时,加载插件即可。而不需要该功能时,卸载插件即可。KingbaseES 中通过 1 个全局级参数配合插件
来实现用户密码过期检查。详情参见插件 identity_pwdexp 。
特性实际操作
修改 kingbase.conf 文件中 shared_preload_libraries 参数。
shared_preload_libraries = 'identity_pwdexp'.
\c - system
create extension identity_pwdexp;
CREATE EXTENSION
\c - sso
show identity_pwdexp.password_change_interval;
identity_pwdexp.password_change_interval
--------------------------
30
(1 row)
alter system set identity_pwdexp.password_change_interval = 5;
ALTER SYSTEM
show identity_pwdexp.password_change_interval;
identity_pwdexp.password_change_interval
------------------------------------------
0
(1 行记录)
select sys_reload_conf();
sys_reload_conf
-----------------
t
(1 行记录)
show identity_pwdexp.password_change_interval;
identity_pwdexp.password_change_interval
------------------------------------------
5
(1 行记录)
\c - system
call now();
now
-------------------------------
2020-04-30 15:34:30.408304+08
(1 行记录)
CREATE USER u_pwd_et PASSWORD '1234567890abC/.' VALID UNTIL '
2020-05-01';
CREATE ROLE
SELECT USENAME, VALUNTIL FROM SYS_USER WHERE USENAME ='u_pwd_et';
usename | valuntil
----------+------------------------
u_pwd_et | 2020-05-01 00:00:00+08
(1 行记录)
ALTER USER u_pwd_et PASSWORD '/.1234567890abC';
警告: user "u_pwd_et" does not be locked
ALTER ROLE
SELECT USENAME, VALUNTIL FROM SYS_USER WHERE USENAME =
'u_pwd_et';
usename | valuntil
----------+-------------------------------
u_pwd_et | 2020-05-05 15:35:23.448381+08
(1 行记录)
使用经验及注意事项
只需要加载插件,然后照做即可。
价值评价
通过口令有效期管理,可以增加口令的安全性,为用户的安全提供保障,防止因为长期使用同一个口令,或者历史口令泄露等带来的安全隐患。
参考资料
《KingbaseES 安全指南》