[ORACLE]oracle用户密码永不过期修改以及ORA-28000报错解决

一、背景

oracle11g之后的版本在账号安全上有一个新特性,类似系统账号过期一样。 创建用户时缺省密码过期限制是180天, 超过180天用户密码未做修改则该用户无法登录。

二、确认用户的密码策略

1.查看用户密码策略

sql>select t.USERNAME,t.password,t.ACCOUNT_STATUS,t.LOCK_DATE,t.EXPIRY_DATE,t.PROFILE from dba_users t;

2.查看指定概要文件(如default)的密码有效期设置:

sql>SELECT * FROM dba_profiles ;

这些参数的意义:
FAILED_LOGIN_ATTEMPTS 整数设定登录到Oracle 数据库时可以失败的次数。一旦某用户尝试登录数据库的达到该值时,该用户的帐户就被锁定,只能由DBA能解锁。
PASSWORD_LIFE_TIME 设定口令的有效时间(天数),一旦超过这一时间,必须重新设口令。缺省为UNLIMITED。
PASSWORD_REUSE_TIME 许多系统不许用户重新启用过去用过的口令。该资源项设定了一个失效口令要经过多少天,用户才可以重新使用该口令。缺省为UNLIMITED.
PASSWORD_REUSE_MAX 重新启用一个先前用过的口令前必须对该口令进行重新设置的次数(重复用的次数)。
PASSWORD_LOCK_TIME 设定帐户被锁定的天数(当登录失败达到FAILED_LOGIN_ATTEMPTS时)。
PASSWORD_GRACE_TIME 设定在口令失效前,给予的重新设该口令的宽限天。当口令失效之后回,在登录时会出现警告信息显示该天数。如果没有在宽限天内修改口令,口令将失效。
PASSWORD_VERITY_FUNCTION该资源项允许调用一个PL/SQL 来验证口令。Oracle公司已提供该应用 的脚本,但是只要愿意的话,用户可以制定自己的验证脚本。该参数的设定就是PL/SQL函数的名称。缺省为NULL.

3.后期可以使用如下语句

sql>SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';

该库的默认有效期是180天

三、修改用户密码策略为unlimited

---修改默认有效期天数为不限制

sql>alter profile default limit password_life_time unlimited;

四、验证当前用户的密码策略

sql>SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';

参数已修改

sql>select t.USERNAME,t.password,t.ACCOUNT_STATUS,t.LOCK_DATE,t.EXPIRY_DATE,t.PROFILE from dba_users t;

账户状态为OPEN ,LOCKED的用户记录expiry_date字段为空,表示无过期日期

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

五、ora-28000报错解决

1.使用EXPIRED状态的账户登录时会报错ora-28000,需要重置密码

sql>alter user user_name identified by 123;

2.状态为EXPIRED&LOCKED的账户需要执行密码重置和解锁

sql>alter user user_name identified by 123;

sql>alter user user_name account unlock;

3.状态为LOCKED的账户需要执行解锁

sql>alter user user_name account unlock;

相关推荐
小光学长27 分钟前
基于ssm旅游管理系统的开发与设计z050cft7(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
java·数据库·旅游
剑之所向35 分钟前
MCU开机按键,怎么避免抖动造成的开机
数据库·单片机·mongodb
lightningyang1 小时前
渗透入门之SQL 注入(二)
数据库·sql·渗透·sql注入
四谎真好看1 小时前
MySQL 学习笔记(运维篇1)
运维·数据库·笔记·学习·mysql·学习笔记
ZLZQ_Yuan2 小时前
MyBatis、MyBatis-Plus
数据库·mybatis
、BeYourself2 小时前
PostgreSQL 向量扩展插件pgvector安装
数据库·postgresql
RPA机器人就选八爪鱼3 小时前
RPA在银行IT运维领域的应用场景与价值分析
大数据·运维·数据库·人工智能·机器人·rpa
廋到被风吹走3 小时前
【数据库】【Oracle】函数整理
数据库·oracle
冉冰学姐3 小时前
SSM校园二手物品交易系统051x4(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·商品全流程管理
遇见火星3 小时前
MySQL 5.7/8.0 物理备份实战:XtraBackup 全量+增量+验证+恢复
数据库·mysql·adb·xtrabackup·mysql8.0