1 概述
2 密码策略
2.1 密码校验规则
utlpwdmg.sql 是 oracle 自带的用于校验密码的脚本- 默认的路径位置:
$ORACLE_HOME/rdbms/admin/ - 设置查询 sql:
select * from dba_profiles order by profile, resource_type
其中主要参数如下:
参数名 | 解释 |
---|
PASSWORD_LIFE_TIME N | 密码生命周期:N 天 | PASSWORD_GRACE_TIME N | 密码宽限期:N 天。PASSWORD_LIFE_TIME 后还能用 N 天,但会有提示:系统在几天内过期 | PASSWORD_REUSE_TIME N | 密码再次使用时间。相同密码 N 天后才能继续使用(UNLIMITED:不限制) | PASSWORD_REUSE_MAX N | 密码再次使用次数。PASSWORD_REUSE_TIME 后相同密码至少修改 N 次后才能继续使用(每次修改密码不同) | FAILED_LOGIN_ATTEMPTS N | 失败的登录尝试。用户在登录尝试失败 N 次后被锁定 | PASSWORD_LOCK_TIME N | 密码锁定时间。FAILED_LOGIN_ATTEMPTS 后被锁 N 天 | PASSWORD_VERIFY_FUNCTION | 密码验证函数。Oracle 内置,源自 utlpwdmg.sql |
主要函数:
2.2 修改密码有效期
SQL>
SQL> select * from dba_profiles t where t.profile = 'DEFAULT' and t.resource_name = 'PASSWORD_LIFE_TIME';
PROFILE RESOURCE_NAME RESOURCE_TYPE LIMIT
DEFAULT PASSWORD_LIFE_TIME PASSWORD 180
SQL>
SQL> alter profile default limit password_life_time unlimited;
Profile altered
SQL>
SQL> select * from dba_profiles t where t.profile = 'DEFAULT' and t.resource_name = 'PASSWORD_LIFE_TIME';
PROFILE RESOURCE_NAME RESOURCE_TYPE LIMIT
DEFAULT PASSWORD_LIFE_TIME PASSWORD UNLIMITED
2.3 修改密码尝试次数
SQL>
SQL> select * from dba_profiles t where t.profile = 'DEFAULT' and t.resource_name = 'FAILED_LOGIN_ATTEMPTS';
PROFILE RESOURCE_NAME RESOURCE_TYPE LIMIT
DEFAULT FAILED_LOGIN_ATTEMPTS PASSWORD 10
SQL>
SQL> alter profile default limit failed_login_attempts 3;
Profile altered
SQL>
SQL> select * from dba_profiles t where t.profile = 'DEFAULT' and t.resource_name = 'FAILED_LOGIN_ATTEMPTS';
PROFILE RESOURCE_NAME RESOURCE_TYPE LIMIT
DEFAULT FAILED_LOGIN_ATTEMPTS PASSWORD 3
|