在Oracle数据库中,可以通过查询DBA_PROFILES视图来查看密码的复杂性策略。以下是一个查询示例,它显示了密码复杂度策略的详细信息
SELECT *
FROM dba_profiles
WHERE profile = 'DEFAULT'
AND resource_name = 'PASSWORD';
这个查询会返回DEFAULT配置文件中关于密码复杂性设置的行。结果中的RESOURCE_NAME为PASSWORD的行包含了密码策略的详细信息,比如密码长度、强制密码历史、密码到期等。
在profile中修改PASSWORD_VERIFY_FUNCTION(口令复杂性验证)
1、查看当前开启用户及其profile
select username,profile from dba_users where account_status='OPEN';
2、使用缺省的profile-DEFAULT 修改口令复杂性验证为 "VERIFY_FUNCTION_11G" 例程
即:密码必须至少包含一个数字,一个字符,密码长度至少为8
alter profile DEFAULT limit PASSWORD_VERIFY_FUNCTION VERIFY_FUNCTION_11G;
3、使用缺省的profile-DEFAULT 修改口令复杂性验证为 "verify_function" 例程
即:密码必须包含至少一个数字,一个字符和一个标点符号,密码长度至少为4
alter profile DEFAULT limit PASSWORD_VERIFY_FUNCTION VERIFY_FUNCTION;
4、关闭密码口令复杂度认证
alter profile DEFAULT limit PASSWORD_VERIFY_FUNCTION null;