加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

oracle如何修改单个用户密码永不过期

发布时间:2020-12-12 14:58:28 所属栏目:百科 来源:网络整理
导读:Oracle的密码过期规则是用Profile来管理的,系统默认只有一个Profile(DEFAULT),该profile的密码过期规则为180天;而所有的用户都使用该DEFAULT的profile,所以如果修改DEFAULT的过期规则会影响所有的用户。如果你想修改某个用户的密码让其永不过期,则需

Oracle的密码过期规则是用Profile来管理的,系统默认只有一个Profile(DEFAULT),该profile的密码过期规则为180天;而所有的用户都使用该DEFAULT的profile,所以如果修改DEFAULT的过期规则会影响所有的用户。如果你想修改某个用户的密码让其永不过期,则需要新建一个profile,修改该profile的过期规则为无限期,这样该用户的过期规则会改变,并且不会影响到其他用户。

首先查看用户的proifle是哪个,一般是default:

sql>SELECT username,PROFILE FROM dba_users;

USERNAME PROFILE

------------------------------ ------------------------------

SCOTT DEFAULT

EXFSYS DEFAULT

ORDSYS DEFAULT

MDSYS DEFAULT

FLOWS_FILES DEFAULT

OMUADM DEFAULT

SYSTEM DEFAULT

SYS DEFAULT

VPXADMIN DEFAULT

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

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

PROFILE RESOURCE_NAME RESOURCE

------------------------------ -------------------------------- --------

LIMIT

----------------------------------------

DEFAULT PASSWORD_LIFE_TIME PASSWORD

180

3、如果在这里将密码有效期由默认的180天修改成“无限制”,则影响的是所有用户:

sql>ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

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


注意:修改后,还没有被提示ORA-28002警告的帐户不会再碰到同样的提示;

已经被提示的帐户必须再改一次密码,例如

$sqlplus / as sysdba

sql> alter user vpxadmin identified by <原来的密码> ----不用换新密码


那么如果你要为某个用户设置密码永不过期,可以这样来做。比如修改vpxadmin用户的密码过期规则为无限期UNLIMITED,只需要三个步骤:

1. 新建profile "VPXADMIN_UNLIMIT",规则与DEFAULT一致(因为一个profile中包含很多的项目,我们此时只想修改过期规则,其他的不变)

2. 修改profile "VPXADMIN_UNLIMIT",修改过期规则为UNLIMITED

3. 将'VPXADMIN'用户适用新的profile "PASSWD_UNLIMIT"

1. 创建新的profile(VPXADMIN_UNLIMIT)复制DEFAULT的Script CREATE PROFILE "VPXADMIN_UNLIMIT" LIMIT SESSIONS_PER_USER UNLIMITED CPU_PER_SESSION UNLIMITED CPU_PER_CALL UNLIMITED CONNECT_TIME UNLIMITED IDLE_TIME UNLIMITED LOGICAL_READS_PER_SESSION UNLIMITED LOGICAL_READS_PER_CALL UNLIMITED COMPOSITE_LIMIT UNLIMITED PRIVATE_SGA UNLIMITED FAILED_LOGIN_ATTEMPTS 10 PASSWORD_LIFE_TIME 180 PASSWORD_REUSE_TIME UNLIMITED PASSWORD_REUSE_MAX UNLIMITED PASSWORD_LOCK_TIME 1 PASSWORD_GRACE_TIME 7

PASSWORD_VERIFY_FUNCTION NULL;


然后查看下

SELECT profile FROM dba_profiles;PROFILE

------------------------------

DEFAULT

VPXADMIN_UNLIMIT

已创建成功。


--2. 修改新建的profile(VPXADMIN_UNLIMIT),密码过期为不过期 ALTER profile VPXADMIN_UNLIMIT limit PASSWORD_LIFE_TIME UNLIMITED; --3. 修改用户的Profile为新的profile

alter user VPXADMIN profile VPXADMIN_UNLIMIT; 再验证一下,果然就可以了!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读