penguin23
作者penguin23·2017-07-23 22:04
系统运维工程师·广州佳杰科技有限公司

【数据库】ORACLE11g账号密码策略

字数 1643阅读 2062评论 1赞 9

参数解释:

PASSWORD_LIFE_TIME 60 --口令的生命周期,超过这段时间口令可能会自动过期,是否过期要看是否设定了PASSWORD_GRACE_TIME
PASSWORD_GRACE_TIME 10 --接着PASSWORD_LIFE_TIME特性,如果PASSWORD_LIFE_TIME的期限已到,那么PASSWORD_GRACE_TIME 的设置是对口令生命周期的一个grace(宽限或者延续),口令到期之后,继续可以使用的天数,在这段时间内如果我们登录系统,会有提示,提示系统在几天内过期
PASSWORD_REUSE_TIME 1800 --这个特性限制口令在多少天内不能重复使用
PASSWORD_REUSE_MAX UNLIMITED --这个特性是针对PASSWORD_REUSE_TIME的,说明要想在PASSWORD_REUSE_TIME这个参数指定的时间内重复使用当前口令,那么至少需要修改过口令的次数(修改过的口令当然肯定需要和当前口令不同,因为毕竟还有PASSWORD_REUSE_TIME 特性的限制)
FAILED_LOGIN_ATTEMPTS 3 --这个比较好理解,不知道口令的话尝试登录的次数,达到这个次数之后账户被自动锁定
PASSWORD_LOCK_TIME 1/1440 --接着FAILED_LOGIN_ATTEMPTS参数,口令被自动锁定的时间,达到这个时间之后,下次登录时系统自动解除对这个账户的锁定

操作例子:

1、调整oracle内置SQL脚本;
vi $ORACLE_HOME/rdbms/admin/utlpwdmg.sql (改长度为6,PASSWORD_LIFE_TIME为UNLIMITED,FAILED_LOGIN_ATTEMPTS为5,PASSWORD_LOCK_TIME为1/24)

   IF length(password) < 6 THEN
      raise_application_error(-20001, 'Password length less than 6');
   END IF;

ALTER PROFILE DEFAULT LIMIT
PASSWORD_LIFE_TIME UNLIMITED
PASSWORD_GRACE_TIME 7
PASSWORD_REUSE_TIME UNLIMITED
PASSWORD_REUSE_MAX UNLIMITED
FAILED_LOGIN_ATTEMPTS 5
PASSWORD_LOCK_TIME 1/24
PASSWORD_VERIFY_FUNCTION verify_function_11G;```

**2、执行SQL语句;**

SQL> @$ORACLE_HOME/rdbms/admin/utlpwdmg.sql verify_function_11G;
SQL> alter profile default limit password_verify_function verify_function_11G;
SQL> ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS 5 (执行了上述SQL脚本,可省略此指令)
SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LOCK_TIME 1/24 (执行了上述SQL脚本,可省略此指令)
SQL>SELECT profile,resource_type,resource_name,limit FROM dba_profiles WHERE resource_type='PASSWORD' AND profile='DEFAULT';

![oracle.jpg](/home/attachment/201707/23/4116_150081889511515.jpg)

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

9

添加新评论1 条评论

macroseamacrosea项目总监人民医院
2017-08-01 12:39
在TWT中查看较方便,不用再找度娘
Ctrl+Enter 发表

作者其他文章

X社区推广