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

首先查看用户的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;

 

然后查看下

SELECTprofile 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; 再验证一下,果然就可以了!

猜你喜欢

转载自www.linuxidc.com/Linux/2017-05/143443.htm
今日推荐