–1.创建密码复杂度函数。
SQL> conn /as sysdba
Connected.
SQL> @?/rdbms/admin/utlpwdmg.sql

–2.创建具有密码复杂度的Profile;
create profile PROF_MYPROFILE limit
SESSIONS_PER_USERunlimited –每个用户拥有的会话数不限。
PASSWORD_REUSE_TIME 60 –密码重用次数。
FAILED_LOGIN_ATTEMPTS 10–失败可尝试登录次数10次。
PASSWORD_LIFE_TIME180–密码180天过期。
PASSWORD_GRACE_TIME7 –最多可以延迟7天必须修改密码。
PASSWORD_REUSE_MAX1 –密码只能重用一次。
PASSWORD_LOCK_TIME1/48 –锁定时间30分钟。
IDLE_TIME 4320 –空闲时间。
PASSWORD_VERIFY_FUNCTION verify_function_11G; –指定密码复杂度函数:最少8位,包含大写,小写,数字,特殊符号。

–3.将某个用户xsq加入到这个密码策略中,此用户将使用该策略。
alter user xsq profile PROF_MYPROFILE;
select * from dba_profiles;
select * from dba_users;

–4.创建新用户示例。
create user xsq2 identified by Oracle#123
default tablespace users temporary tablespace temp profile PROF_MYPROFILE;

–5.将default profile 的策略改为永不过期,不应用密码复杂度策略。。
alter profile default limit PASSWORD_LIFE_TIME unlimited;
alter profile default limit PASSWORD_VERIFY_FUNCTION null;