Oracle數據庫用戶鎖定原因以及處理方式(ORA-28000)


現場在實施過程中,基於安全考慮(用戶名和密碼之前暴露給其他公司了),需要對用戶密碼進行修改。

修改過程很簡單(alter user [username] identified by [password];),但是在修改之后出現該用戶被鎖定的問題。

原因:數據庫參數文件中設置了輸錯密碼的次數,登錄時當輸錯密碼的次數超過所設置的次數時,則鎖住該用戶。默認一般為10次。輸錯密碼鎖住用戶的設計原因:防止惡意的密碼攻擊。

一開始以為是內部人員不知道密碼修改了,多次嘗試登陸因為密碼錯誤導致賬戶鎖定。對賬號進行了手動解鎖(alter user [username] account unlock;),但是后續又出現多次鎖定的情況。

后來發現我們在基於此用戶做過一些ETL以及建立DBLINK等,對這些內容進行同步的密碼更新解決用戶鎖定的問題。

下面是過程中問題排查方式:

1、查詢出當前賬號的鎖定時間

select username,lock_date from dba_users where username=[username];

2、根據鎖定時間查看日志文件

日志存放路徑可以通過命令查看

image

可以通過日志文件定位訪問的IP地址等信息(或者trace文件夾下的listener.log文件)。

image

在使用過程中,我們也可以修改允許的最大密碼輸入錯誤次數,具體修改方法如下:

1、查看當前設置值

select * from dba_profiles where RESOURCE_NAME='FAILED_LOGIN_ATTEMPTS';

2、修改為30次

alter profile default limit FAILED_LOGIN_ATTEMPTS 30;

3、修改為無限次(為安全起見,不建議使用)

alter profile default limit FAILED_LOGIN_ATTEMPTS unlimited;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM