KingbaseES中sao用户被锁定并解锁
sao用户登录失败次数达到最大值后被锁定,这时,需要sso用户解锁sao用户。
我们先了解一下三权分立的概念,顾名思义,三权分立是把过于集中的系统权限分到三个用户身上,分工管理权限。
-
系统管理员(system)
主要负责执行数据库日常管理的各种操作和自主存取控制。
-
安全管理员(sso)
主要负责强制访问规则的制定和管理,监督审计管理员和普通用户的操作,不能创建和操作普通对象。
-
审计管理员(sao)
主要负责数据库的审计,监督系统管理员和安全管理员的操作,不能创建和操作普通对象。
sao被锁定和解锁过程
创建帐户异常登录锁定插件
修改 kingbase.conf 文件中shared_preload_libraries 参数。
shared_preload_libraries = 'sys_audlog'
create extension sys_audlog;
TEST=# show sys_audlog.max_error_user_connect_times;
sys_audlog.max_error_user_connect_times
-----------------------------------------
2147483647
TEST=# show sys_audlog.error_user_connect_times;
sys_audlog.error_user_connect_times
-------------------------------------
3
(1 row)
TEST=# show sys_audlog.error_user_connect_interval;
sys_audlog.error_user_connect_interval
----------------------------------------
0
(1 row)
密码错误达到3次被锁定
[kingbase7@localhost data]$ ksql -h 127.0.0.1 -Usao security
Password for user sao:
ksql: error: could not connect to server: FATAL: The user "sao" is locked.
[kingbase7@localhost data]$ ksql -Usystem test
ksql (V8.0)
Type "help" for help.
test=# \c security sao
Password for user sao:
FATAL: The user "sao" is locked.
Previous connection kept
需要用sso用户解锁sao用户
test=# \c security sso
Password for user sso:
You are now connected to database "security" as user "sso".
security=>
security=>
security=> ALTER USER sao WITH LOGIN;
ALTER ROLE
security=>
security=> \c security sao
Password for user sao:
You are now connected to database "security" as user "sao".
security=>
KINGBASE研究院