共计 2327 个字符,预计需要花费 6 分钟才能阅读完成。
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; 再验证一下,果然就可以了!
更多 Oracle 相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-05/143443.htm