帐号经常被lock

PDM测试环境最近频繁出现PDMEPO帐号被锁的情况,确定开发人员没有管理员权限,相信应用是不知道怎么锁定帐号的,但是每过一段时间帐号就被锁了,需要解锁,很疑惑。

查看了一下用户的profile,default的,而这台DB是10.2.0.1,default的profile默认的FAILED_LOGIN_ATTEMPTS值是10,也就是说连续10次输入错误密码就会导致该帐号被锁定。
SQL> select * from dba_profiles where resource_name='FAILED_LOGIN_ATTEMPTS';

PROFILE    RESOURCE_NAME       RESOURCE_TYPE LIMIT
DEFAULT FAILED_LOGIN_ATTEMPTS PASSWORD 10

可以修改成无限制
SQL> ALTER PROFILE default LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED;
Profile altered.

看网上有人讲可以根据监听日志判断谁在尝试口令,我在监听日志中没有找到相关的信息。

扩展知识:
1.用户登陆失败的次数记录在user$表中,lcount栏位(user$为view dba_users的基表)
  select NAME,LCOUNT  from user$
2.FAILED_LOGIN_ATTEMPTS=3的含义是从第一次登录失败开始计算,连续登陆失败的次数。而不是累计失败的次数。(经过试验得到验证,登陆失败,lcount加1;只要成功登录后,lcount栏位就会置0)
3.解锁:alter user pdmepo account unlock;
4.用户状态
SQL> select * from sys.user_astatus_map;

   STATUS# STATUS
---------- --------------------------------
         0 OPEN
         1 EXPIRED
         2 EXPIRED(GRACE)
         4 LOCKED(TIMED)
         8 LOCKED
         5 EXPIRED & LOCKED(TIMED)
         6 EXPIRED(GRACE) & LOCKED(TIMED)
         9 EXPIRED & LOCKED
        10 EXPIRED(GRACE) & LOCKED

9 rows selected
通过上面的查询我们可以看到在Oracle中accunt总共有9种不同的状态,对应dba_users视图中的account_status字段。下面我分别就每种状态的含义和出现的情况做个简单的说明,以便于今后的系统管理和维护。


分析上面的9种状态不难看出,其实独立的状态只有OPEN、EXPIRED、LOCKED、EXPIRED(GRACE)、LOCKED(TIMED) 5种形式。其他4种不过是前面几种形式的组合而已。

OPEN: 这个是大家最常见的,就是表示这个是可用的,没有任何限制的帐户

LOCKED:表示这个帐户被DBA锁定. 一般通过alter user username account lock(unlock);

EXPIRED:表示该帐户被设置为口令到期,要求用户在下次logon的时候修改口令(系统会在该account被设置为expire后的第一次登陆是提示你修改密码)

EXPIRED(GRACE):当设置了grace以后(第一次成功登录后到口令到期后有多少天时间可改变口令,在这段时间内,帐户被提醒修改口令并可以正常登陆,account_status显示为EXPIRED(GRACE).

LOCKED(TIMED):这种状态表示失败的login次数超过了FAILED_LOGIN_ATTEMPTS,被系统自动锁定,需要注意的是,在Oracle 10g中,默认的DEFAULT值是10次.

剩下的几种情况就是上面的组合了:
EXPIRED & LOCKED
SQL> alter user study password expire account lock;
用户已更改。

SQL> select account_status from dba_users where username='STUDY';

ACCOUNT_STATUS
--------------------------------
EXPIRED & LOCKED

EXPIRED(GRACE) & LOCKED(TIMED)当account_stutus为EXPIRED(GRACE)的时候,用户又失败的login次数超过了FAILED_LOGIN_ATTEMPTS,被系统自动锁定

EXPIRED & LOCKED(TIMED)当设置了account expire后,用户又失败的login次数超过了FAILED_LOGIN_ATTEMPTS,被系统自动锁定

EXPIRED(GRACE) & LOCKED用户account_status为EXPIRED(GRACE)后,又被DBA 手工锁定帐户后的状态。

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10640532/viewspace-617998/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10640532/viewspace-617998/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值