插件passwordhistory简介¶
passwordhistory插件主要用于管理口令历史。
口令的历史检查是由数据库管理员对初次设定的口令或更改过的口令使用天数进行设置后,在修改用户口令时,自动对口令已使用天数进行相关方面的检查。如果口令不满足指定的条件,那么更改口令将不成功。
KingbaseES通过插件的方式来进行口令历史管理。这种方式更为灵活,当数据库的实用场景需要进行口令历史管理时,加载插件即可。而不需要该功能时,卸载插件即可。
KingbaseES中通过 2 个全局级参数配合插件来实现用户口令历史管理。
-
插件名为 passwordhistory
-
插件版本 V1.0
2. 插件passwordhistory加载方式¶
在使用 passwordhistory 之前,我们需要将他添加到 kingbase.conf 文件的 shared_preload_libraries 中,并重启 KingbaseES 数据库。
示例:
shared_preload_libraries = 'passwordhistory'
3. 插件passwordhistory的参数配置¶
passwordhistory.enable
密码历史开关,默认为关闭状态。
passwordhistory.password_time
设定口令历史天数,缺省为 0。
示例:
-- 创建插件并打开口令历史开关 create extension passwordhistory; CREATE EXTENSION show passwordhistory.enable; passwordhistory.enable ------------------------ off (1 行记录) alter system set passwordhistory.enable=on; ALTER SYSTEM select sys_reload_conf(); sys_reload_conf ----------------- t (1 行记录) show passwordhistory.enable; passwordhistory.enable ------------------------ on (1 行记录) -- 设定口令历史天数为2 show passwordhistory.password_time; passwordhistory.password_time ------------------------------- 0 (1 row) SET passwordhistory.password_time = 2; call sys_reload_conf(); sys_reload_conf ----------------- t (1 row) SHOW passwordhistory.password_time; passwordhistory.password_time ------------------------------- 2 (1 row) create user test with password '123'; CREATE ROLE alter user test with password '123'; ERROR: The password has been used recently.
4. 插件passwordhistory的使用方法¶
记载passwordhistory插件后,在修改用户口令时,程序会自动对口令已使用天数进行相关方面的检查。如果口令不满足指定的条件,那么更改口令将不成功。
5. 插件passwordhistory卸载方法¶
修改 kingbase.conf 文件中 shared_preload_libraries
参数后重启数据库。
示例:
shared_preload_libraries = ''
6. 插件passwordhistory升级方法¶
passwordhistory扩展插件通常随着KingbaseES安装包一并升级。通常情况下用户无须单独升级些插件。