修改oracle密码有效期限制的方法有哪些

51次阅读
没有评论

共计 1355 个字符,预计需要花费 4 分钟才能阅读完成。

自动写代码机器人,免费开通

修改 oracle 密码有效期限制的方法有哪些?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

bug 说明:

oracle11g,静默安装后用户的密码有效期默认设置为 180 天,180 天后密码将失效,oracle 会提示要修改密码。

我们项目用的是 jdbc 连接 oracle 数据库,没法自动处理 oracle 的这种密码错误提示,直接就连接 oracle 失败。

解决思路一:

定期修改数据库用户密码。

解决思路二:

将数据库密码设置为永久有效。

思路一具有一定的安全保护作用,但由于业务不支持修改业务部件中的数据库密码配置(部件较多,修改过于麻烦,所以干脆要求不能修改,想想有点矬),于是决定采用思路二。

具体设置命令如下:

假定我们所使用的数据库用户为 test,密码为 test123456

步骤一:登陆 oracle 所在的 linux 服务器(我们的 oracle 假设在 linux 服务器上),注意要用 dba 用户。

步骤二:执行 sqlplus / as sysdba

步骤三:输入 alter profile default limit password_life_time unlimited; 并回车

步骤四:输入 alter user test identified by test123456;

步骤五:输入 quit; 退出 sqlplus。

步骤六:重启各个业务部件,一切 OK。

需要注意的是,对于第四步,可能会失败,因为 oracle 有可能设置了修改密码时不能与历史密码重复的限制,我们可以先执行以下命令去掉限制,然后再执行第四步。虽然对于第四步而言设置前后密码没有改变,但却是必要的吗,实际测试中发现即使做了第三步处理,如果不执行第四步,jdbc 连接数据时依然会连接失败。

alter profile default limit password_reuse_max unlimited; 
 alter profile default limit password_reuse_time unlimited;

在使用 profile 并想重复利用密码的时,需要满足如下条件

1)password_reuse_time 和 password_reuse_max 都为 unlimted 的时候

可以随便重置

2)当指定 password_reuse_time 和 password_reuse_max 其中一个,另外一个 unlimted 的时候

密码永远无法重置

3)当同时指定 password_reuse_time 和 password_reuse_max 的时候

在满足 password_reuse_max 的时候,可以重置密码

在同时满足 password_reuse_time 和 password_reuse_max 的时候,可以重置密码

在满足 password_reuse_time 但从为更换过密码的时候,也就是 password_reuse_max 一次也没用的时候密码无法重置.

上面这种处理方案是修复现网问题的弥补性措施,根本的要在 oralce 安装的时候就去掉密码有效期的限制。

看完上述内容,你们掌握修改 oracle 密码有效期限制的方法有哪些的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注丸趣 TV 行业资讯频道,感谢各位的阅读!

向 AI 问一下细节

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-04发表,共计1355字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)