Oracle11g账户频繁被锁定的3种解决办法

方法1:创建触发器

方法1:数据库中创建触发器(只记录失败),但是需要开发同意或者开发自己创建。找到密码输入错误的服务器,进行数据源配置的更改。

该方法适用于要求找到密码错误用户所在服务器的场景下。

CREATE OR REPLACE TRIGGER sys.logon_denied_to_alert
  AFTER servererror ON DATABASE
DECLARE
  message   VARCHAR2(168);
  ip        VARCHAR2(15);
  v_os_user VARCHAR2(80);
  v_module  VARCHAR2(50);
  v_action  VARCHAR2(50);
  v_pid     VARCHAR2(10);
  v_sid     NUMBER;
  v_program VARCHAR2(48);
  v_username VARCHAR2(32);
BEGIN
  IF (ora_is_servererror(1017)) THEN
    -- get ip FOR remote connections :
    IF upper(sys_context('userenv', 'network_protocol')) = 'TCP' THEN
      ip := sys_context('userenv', 'ip_address');
    END IF;
    SELECT sid INTO v_sid FROM sys.v_$mystat WHERE rownum < 2;
    SELECT p.spid, v.program
      INTO v_pid, v_program
      FROM v$process p, v$session v
     WHERE p.addr = v.paddr
       AND v.sid = v_sid;
    v_os_user := sys_context('userenv', 'os_user');
    v_username := sys_context('userenv','authenticated_identity');
    dbms_application_info.read_module(v_module, v_action);
    message := to_char(SYSDATE, 'YYYY-MM-DD HH24:MI:SS') ||
               ' Password Erro: logon denied from ' || nvl(ip, 'localhost') || ' ' ||
               v_pid || ' User:' || v_os_user || ' with ' || v_program || ' – ' ||
               v_module || ' ' || v_action||' dbuser:' || v_username;
    sys.dbms_system.ksdwrt(2, message);
  END IF;
END;
/

这个触发器不写入数据库表,会在告警日志中记录

--查看数据库的告警日志
[oracle@top132] cd /u01/app/oracle/diag/rdbms/topdh/topdh/trace
[oracle@top132:/u01/app/oracle/diag/rdbms/topdh/topdh/trace]$ tail -200f alert_topdh.log
Fri Dec 01 19:48:49 2023
2023-12-01 19:48:49 Password Erro: logon denied from localhost 5944 User:oracle with sqlplus@top132 (TNS V1-V3) – sqlplus@top132 (TNS V1-V3)  dbuser:hr
Fri Dec 01 19:52:21 2023
2023-12-01 19:52:21 Password Erro: logon denied from 192.168.16.122 6273 User:Administrator with navicat.exe – navicat.exe  dbuser:SYS

参考链接:https://www.cnblogs.com/plluoye/p/10951120.html

方法2:设置密码输错次数参数

在不需要查被锁定用户的服务器的场景下可以用该方法。

Oracle profile文件设置了密码输错次数限制,超过该次数就会被锁定,更改Oracle profile文件设置了密码输错次数限制为无限制。

查询用户信息

--查询用户信息
set linesize 999
set pagesize 999
select username,account_status,lock_date,profile from dba_users;

USERNAME		       ACCOUNT_STATUS			LOCK_DATE	        PROFILE
------------------------------ -------------------------------- ------------------- ------------------------------
......
SYXK			         LOCKED			    	2024-05-08 15:39:25 DEFAULT
.......

查询状态为:LOCKED(TIMED)

查看profile文件配置信息

--查看profile文件配置信息
set linesize 999
set pagesize 999
SELECT resource_name,resource_type,limit FROM dba_profiles WHERE profile='DEFAULT'; 

RESOURCE_NAME			 RESOURCE LIMIT
-------------------------------- -------- ----------------------------------------
COMPOSITE_LIMIT 		       KERNEL   UNLIMITED
SESSIONS_PER_USER		       KERNEL   UNLIMITED
CPU_PER_SESSION 		       KERNEL   UNLIMITED
CPU_PER_CALL		        	 KERNEL   UNLIMITED
LOGICAL_READS_PER_SESSION	 KERNEL   UNLIMITED
LOGICAL_READS_PER_CALL		 KERNEL   UNLIMITED
IDLE_TIME			             KERNEL   UNLIMITED
CONNECT_TIME			         KERNEL   UNLIMITED
PRIVATE_SGA		   	         KERNEL   UNLIMITED
FAILED_LOGIN_ATTEMPTS		   PASSWORD 10
PASSWORD_LIFE_TIME		     PASSWORD UNLIMITED
PASSWORD_REUSE_TIME		     PASSWORD UNLIMITED
PASSWORD_REUSE_MAX		     PASSWORD UNLIMITED
PASSWORD_VERIFY_FUNCTION	 PASSWORD NULL
PASSWORD_LOCK_TIME		     PASSWORD 1
PASSWORD_GRACE_TIME		     PASSWORD 7

已选择16行。

修改参数FAILED_LOGIN_ATTEMPTS

--修改参数FAILED_LOGIN_ATTEMPTS
alter profile default limit FAILED_LOGIN_ATTEMPTS unlimited;

补充:也可以同时进行以下参数修改
alter profile default limit password_grace_time unlimited;
alter profile default limit password_life_time unlimited;
alter profile default limit password_lock_time unlimited;

解锁用户

alter user syxk account unlock;

修改之后不需要重启动数据库,会立即生效。

补充:参数理解

FAILED_LOGIN_ATTEMPTS

FAILED_LOGIN_ATTEMPTS (单位:次数)

  • 用户登录数据库失败次数(密码错误),是整个数据库中各个会话的总和,直到达到这个数,帐户锁定。不是针对特定会话的。
  • 只要登录成功一次,这个计数器就重置为 0 .
  • 帐户锁定后,手工解锁或自动解锁后,该计数器也会重置为 0 .

PASSWORD_LOCK_TIME

PASSWORD_LOCK_TIME (单位:天) 帐户锁定后,多少天后自动解锁。

对应的内部表: user$ (lcount)

PASSWORD_GRACE_TIME

密码到期提前7天提醒

添加profile文件并分配用户

--创建profile文件
create profile profile名字 limit FAILED_LOGIN_ATTEMPTS  10 PASSWORD_LIFE_TIME  180 PASSWORD_REUSE_TIME  UNLIMITED PASSWORD_REUSE_MAX  UNLIMITED PASSWORD_VERIFY_FUNCTION null PASSWORD_LOCK_TIME 1 PASSWORD_GRACE_TIME 30;

--新创建的profile文件分配给用户
alter user 用户名 profile profile名字;

参考链接:https://blog.csdn.net/xiezuoyong/article/details/88849226

方法3:通过告警日志排查

方法3:提供告警日志,根据账户锁定时间逐个排查日志中记录的ip。

该方法不太好用,因为有的日志中ip较多。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/618100.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

在另外一个页面,让另外一个页面弹框显示操作(调佣公共的弹框)

大概意思是&#xff0c;登录弹框在另外一个页面中&#xff0c;而当前页面不存在&#xff0c;在当前页面中判断如果token不存在&#xff0c;就弹框出登录的弹框 最后一行 window.location.href … 如果当前用户已登录&#xff0c;则执行后续操作(注意此处&#xff0c;可不要)

Jboss 反序列化 CVE-2017-12149

一、漏洞简介 JBoss是一个管理EJB的容器和服务器&#xff0c;支持EJB 1.1、EJB 2.0和EJB3的规范。在/invoker/readonly路径下&#xff0c;攻击者可以构造序列化代码传入服务器进行反序列化,由于没有对反序列化操作进行任何检测&#xff0c;导致攻击者可以执行任意代码。 而jbo…

AI 重塑产品设计

作者&#xff1a;明明如月学长&#xff0c; CSDN 博客专家&#xff0c;大厂高级 Java 工程师&#xff0c;《性能优化方法论》作者、《解锁大厂思维&#xff1a;剖析《阿里巴巴Java开发手册》》、《再学经典&#xff1a;《Effective Java》独家解析》专栏作者。 热门文章推荐&am…

【二叉树】Leetcode N 叉树的层序遍历

题目讲解 429. N 叉树的层序遍历 算法讲解 在做层序遍历的时候由于它的每一个结点是有val vector child组成&#xff0c;所以在做层序遍历的时候需要考虑它每一层结点的个数&#xff0c;那我们就可以使用一个queue保存每一层的结点&#xff1b;那么我们在做第一层的时候&am…

【GD32F470紫藤派使用手册】第八讲 ADC-规则组多通道采样实验

8.1 实验内容 通过本实验主要学习以下内容&#xff1a; ADC的简介 GD32F470 ADC工作原理 DMA原理 规则组多通道循环采样 8.2 实验原理 8.2.1 ADC原理 我们知道&#xff0c;自然界中有非常多的模拟信号&#xff0c;比如光照强度&#xff0c;还有其他的例如温度、声音等等…

【C++】stack和queue 适配器

&#x1f525;个人主页&#xff1a;北辰水墨 &#x1f525;专栏&#xff1a;C学习仓 本节内容我们来讲解栈和队列的模拟实现&#xff0c;文末会赋上模拟实现的代码 一、stack的使用和模拟实现 stack适配器的介绍&#xff1a; 1. stack是一种容器适配器&#xff0c;专门用在具…

【操作系统期末速成】​内存管理|内存的装入模块在装入内存的方式|分配管理方式|页面置换算法|页面置换

&#x1f3a5; 个人主页&#xff1a;深鱼~&#x1f525;收录专栏&#xff1a;操作系统&#x1f304;欢迎 &#x1f44d;点赞✍评论⭐收藏 推荐 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到…

Qt之QMqtt 发送图片数据

简述 MQTT(消息队列遥测传输)是ISO标准下基于发布/订阅范式的消息协议;它工作在TCP/IP协议族上,是为硬件性能低下的远程设备以及网络状况糟糕的情况下而设计的发布/订阅型消息协议,为此,它需要一个消息中间件; MQTT是一个基于客户端-服务器的消息发布/订阅传输协议;MQT…

chmod -R 777 / 抢救,看这篇就够了

chmod -R 777抢救全过程记录 背景 在两台Ubuntu 20.04的服务器上错误执行了chmod -R 777 /命令&#xff0c;结果非常酸爽&#xff0c;sudo权限失效&#xff0c;而且ssh也没有用了。在经过了10多个小时的踩坑以后最后在不重装系统的情况下解决了问题&#xff0c;以下记录只记录…

LOTO示波器动作编程功能(命令批处理)

动作编程功能是为了方便客户根据自己的应用场景&#xff0c;做到一个按键就连续做多个示波器操作&#xff0c;从而降低了对操作人员的技术要求&#xff0c;做到傻瓜式操作。之前LOTO有个类似的功能&#xff0c;是把示波器的基础设置根据不同的测试场景存成不同的设置文件&#…

【FFmpeg】Filter 过滤器 ① ( FFmpeg 过滤器简介 | 过滤器概念 | 过滤器用法 | 过滤器工作流程 | 过滤器文档 | 过滤器分类 )

文章目录 一、FFmpeg 过滤器 Filter 简介1、FFmpeg 过滤器概念2、FFmpeg 过滤器用法3、FFmpeg 过滤器工作流程4、FFmpeg 过滤器文档 二、FFmpeg 过滤器 分类1、过滤器分类 - 根据处理数据类型分类2、过滤器分类 - 根据编码器位置分类3、过滤器分类 - 根据功能分类 FFmpeg 相关文…

在vue3中,如何优雅的使用echarts之实现大屏项目

前置知识 效果图 使用技术 Vue3 Echarts Gasp Gasp&#xff1a;是一个 JavaScript动画库,它支持快速开发高性能的 Web 动画。在本项目中&#xff0c;主要是用于做轨迹运动 所需安装的插件 npm i echarts npm i countup.js 数字滚动特效 npm i gsap javascript动画库 np…

竞赛课第十周(巴什游戏,尼姆博弈)

目录 目的: 实验内容: 第一题 思路&#xff1a; 【参考代码】 【运行结果】 第二题 输入&#xff1a; 输出&#xff1a; 【参考代码】 【运行结果】 目的: 熟悉并掌握公平组合游戏 &#xff08;1&#xff09;巴什游戏、尼姆游戏 &#xff08;2&#xff09;图游戏…

【C++】list原理讲解及其实现

目录 一、认识list底层结构 二、list的构造类函数 三、迭代器 四、数据的访问 五、容量相关的函数 六、关于数据的增删查改操作 前言 要模拟实现list&#xff0c;必须要熟悉list的底层结构以及其接口的含义&#xff0c;在上一篇我们仔细讲解了list的常见接口的使用及其含义&…

2024中国(重庆)人工智能展览会8月举办

2024中国(重庆)人工智能展览会8月举办 邀请函 主办单位&#xff1a; 中国航空学会 重庆市南岸区人民政府 招商执行单位&#xff1a; 重庆港华展览有限公司 【报名I59交易会 2351交易会 9466】 展会背景&#xff1a; 2024中国航空科普大会暨第八届全国青少年无人机大赛在…

linux Nginx安装与启动

一、先到官网下载Nginx 官网地址&#xff1a; http://nginx.org/en/download.html 我下载的是nginx-1.20.2 二、下载好的文件上传到服务器&#xff0c;然后解压 1、上传到指定的服务器地址&#xff0c;我这里是公司服务器&#xff0c;目录都是定义好的&#xff0c;自己玩建…

分层存储无法拯救 Kafka

01 引言 Apache Kafka 自诞生之日起&#xff0c;就以其卓越的设计和强大的功能&#xff0c;成为了流处理领域的标杆。它不仅定义了现代流处理架构&#xff0c;更以其独特的分布式日志抽象&#xff0c;为实时数据流的处理和分析提供了前所未有的能力。Kafka 的成功&#xff0…

element ui输入框后面带输入的字符数量

使用el-input的属性&#xff1a; maxlength&#xff1a;最长字符限制&#xff1b; show-word-limit&#xff1a;显示输入字符数量&#xff1b; 例&#xff1a; <el-input v-model"title" placeholder"请输入名称" maxlength"200" show-wor…

阮怀俊谈如何盘活和挖掘乡村文旅资源

近年来&#xff0c;浙江凭借高水平建设新时代美丽乡村&#xff0c;各项工作持续走在全国前列&#xff0c;最近&#xff0c;在国家发展改革委关于恢复和扩大消费措施的通知中也提到&#xff1a; “推广浙江‘千万工程’经验&#xff0c;建设宜居宜业和美乡村。实施文化产业赋能乡…

vue3专栏项目 -- 四、前后端结合(上)

一、前后端分离是什么 前面我们一直在和静态数据打交道&#xff0c;虽然流程可以跑个半通&#xff0c;但是静态数据还是给我们造成了诸多不便&#xff0c;现在我们是时候用上后端了。 现在的应用开发模式&#xff0c;自从SPA出现以后&#xff0c;前端和后端可以平行的进行对应…