- 说明
因业务用户密码太简单,对密码进行修改。部分服务器连接用户密码未修改。因为开启密码失败次数验证,用户不会锁定,但是却发生了用户登陆的问题。该用户无法正常登陆,其他用户登陆正常,用户状态为open。
- 分析
1,FAILED_LOGIN_ATTEMPTS未设置,用户不会被锁定
2,修改密码的用户无法正常连接
3,数据库出现大量library cache lock 等待事件
通过查看mos 1309738.1 可以得出是因为11g的新特性密码延迟认证导致
- 问题处理
关闭特性
ALTER SYSTEM SET EVENT = '28401 TRACE NAME CONTEXT FOREVER, LEVEL 1' SCOPE = SPFILE;
- 密码延迟认证
引用https://www.cnblogs.com/chendian0/p/12814924.html
1 特性简述
为了防止用户密码的暴力破解,从11G开始引入了一个新特性:密码延迟认证。
等待用户输入密码的时间,随着输入错误密码的次数而不断延长。以此缓解暴力破解Oracle用户密码。
2 特性潜在引发问题
修改用户密码引发大量Library Cache Lock 数据库密码应该是定时修改,以提高数据库安全性,防止黑客攻击。但是, 大部署大量程序的业务 系统里,难免会有遗漏的情况。在修改完密码后,数据库会出现大量的Library Cache Lock等待事件。在MOS 上有说明:High ‘library cache lock’ Wait Time Due to Invalid Login Attempts(1309738.1)
BUG 用户登录数据库,哪怕正常登录,每次登录的时间都在延长。
3 关闭特性
该特性编号: 28401 . 如果遇到这里描述的问题,将该特性关闭(临时或者永久)。
ALTER SYSTEM SET EVENT = '28401 TRACE NAME CONTEXT FOREVER, LEVEL 1' SCOPE = SPFILE;