11.4.2 如何利用PROFILE对用户口令进行控制
对用户口令的限制主要涉及口令的使用期限,在一个PROFILE中可以指定多种限制。下面列出了对用户口令可以施加的限制。
·FAILED_LOGIN_ATTEMPTS:允许的失败登录次数。如果用户的失败登录达到指定的次数,用户账号将被锁定。这个参数的默认值为10。
·PASSWORD_LOCK_TIME:账号锁定时间。当用户失败的登录达到指定的次数后,用户账号将被锁定指定的天数。这个参数的默认值为1天。
·PASSWORD_LIFE_TIME:口令的有效期。当用户口令到达有效期后,必须进行修改,如果不修改,用户账号将被锁定。这个参数的默认值为180天。
·PASSWORD_GRACE_TIME:口令有效期的延长期。对口令的有效期可以指定延长期。在延长期内用户仍然可以登录,但是每次登录都将接到警告信息。如果用户在延长期内没有修改口令,用户账号将被锁定。这个参数的默认值为7天。
·PASSWORD_REUSE_TIME:为了再次使用过去用过的口令,必须经过的天数。
·PASSWORD_REUSE_MAX:为了再次使用过去用过的口令,必须使用不同口令的次数。
其中最后两个参数是一起使用的。如果为两个参数都指定了具体的值,那么在指定的天数内,用户的口令必须被修改过指定的次数后,才能使用过去用过的口令。如果为其中一个参数指定了具体值,而将另外一个参数值指定为UNLIMITED,那么用户将永远不能使用过去用过的口令。如果把两个参数都设置为UNLIMITED,那么对用户的口令没有限制。
例如,下面创建的PROFILE对用户的失败登录次数进行控制,如果用户失败的登录次数达到3次,这个用户账号将被锁定5天。
SQL>CREATE PROFILE p1 LIMIT
FAILED_LOGIN_ATTEMPTS 3
PASSWORD_LOCK_TIME 5;
又如,下面创建的PROFILE对用户修改口令进行限制,要求用户在30天内必须把口令修改过5次后,才能使用过去用过的口令。
SQL>CREATE PROFILE p2 LIMIT
PASSWORD_REUSE_TIME 30
PASSWORD_REUSE_MAX 5;
为了通过PROFILE对用户使用口令的情况进行控制,必须把PROFILE指定给某个用户。例如:
SQL>ALTER USER scott PROFILE p1;