暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

人大金仓数据库KingbaseES 账户登录信息显示使用经验分享

原创 数据猿 2023-12-27
1778


关键字:

安全;账户登录信息显示;人大金仓、KingbaseES

概述

账户登录信息显示则会在用户登录数据库时给出用户一些提示信息,如此次登录信息、最后一次成功登录信息、此次登录与上次登录之间登录失败的次数、最近一次尝试登录的信息等。详情参见插件 sys_audlog 。

特性实际操作

在kingbase.conf中增加插件sys_audit_userlog

create extension sys_audlog;

--切换 sso 用户

\c - sso

You are now connected to database "test" as user "sso".

--设置既记录用户成功登陆信息又记录失败登录信息

alter system set sys_audlog.user_logonlog_level = 2;

select sys_reload_conf();

sys_reload_conf

-----------------

t

(1 row)

--退出

\q

You have mail in /var/spool/mail/test

--再次使用 system 用户登录,显示用户登录信息

ksql test -U system -p 54344

ksql (V8.0)

Type "help" for help.

WARNING:License file will expire in 2 days.

This time login information:

User Name: system

Host: [local]

Login Time: 2022-06-17 00:20:46.936437+08

This is your first time login.

The fail times between this login and the last login: 0

The password's expire time is not set.

普通用户可通过 sys_user_audit_userlog 查看本用户的登录信息。管理员查看最近登录的 10 条信息。

select * from sysaudit.sys_audit_userlog order by audtimestamp desc limit 10;

• 系统函数 sys_del_user_logonlog_before_days

安全员可删除指定天数之前的登录信息。例如,安全员删除 30 天以前的用户登录信息:

SELECT sys_audlog.sys_del_user_logonlog_before_days(30);

• 系统函数 sys_del_user_logonlog_by_ip

安全员可删除指定 IP 地址的用户登录信息。例如,安全员删除 IP 为 127.0.0.1 的用户登录信息:

SELECT sys_audlog.sys_del_user_logonlog_by_ip('127.0.0.1');

• 系统函数 sys_del_user_logonlog_by_name

安全员可删除指定用户的登录信息。例如,安全员删除用户 user1 的登录信息:

SELECT sys_audlog.sys_del_user_logonlog_by_name('user1');

使用经验及注意事项

直接加载插件之后重启,然后根据提示来即可。

注意账户登录信息显示这个功能在安全指南上的问题,sys_user_audit_userlog找不到,并且手册中说安全员可操作的语句实际上sso没有权限,反而system有权限。

已经解决,手册问题。

表应该用 select * from sys_audlog.sys_user_audit_userlog;查询

后面的是system实际拥有权限,与手册不符,具体是功能问题还是手册问题暂且未知。

价值评价

此特性可以帮助管理员对其他账户的管理。可以知晓其登录时间,用了多久,是否离开,状态判断等。

参考资料

《KingbaseES 安全指南》

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论