一、前言
有时候我们修改了数据库用户名的密码,不清楚还有哪些应用服务器存在连接数据库的程序,导致帐号一直被锁;我们可以通过利用审计的技巧找出登录失败的机器。
下面咱们演示下如何用标准审计找出登录失败的机器。
二、过程演示
1、查看审计级别
SQL> show parameter audit_trail
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
audit_trail string DB
SQL>
Note:可以看到咱们的审计级别是DB,所以审计记录是存放在表空间里,基表为aud$。
2、查看审计的语句
SQL> select * from dba_priv_audit_opts;
no rows selected
Note:可以看到目录是没有任何的审计策略。
3、配置审计策略
AUDIT SESSION WHENEVER NOT SUCCESSFUL;
Note:这里咱们只开启审计登录失败的用户。
4、查看审计的语句
SQL> select * from dba_priv_audit_opts;
USER_NAME
--------------------------------------------------------------------------------
PROXY_NAME
--------------------------------------------------------------------------------
PRIVILEGE SUCCESS FAILURE
---------------------------------------- ---------- ----------
CREATE SESSION NOT SET BY ACCESS
Note:可以看到目前的策略是审计不成功的会话
5、查看审计记录
select * from dba_audit_session;


Note:通过查看username和userhost字段,就可以看到登录失败的用户名和主机名,想要知道的ip的话,可以去查看监听日志
6、消除审计策略
SQL> noaudit SESSION;
Noaudit succeeded.
SQL> select * from dba_priv_audit_opts;
no rows selected
Note:可以看到目前审计策略已经不存在。
最后修改时间:2023-08-31 10:25:05
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




