SQL server數據庫的密碼策略與登錄失敗鎖定策略


SQL server數據庫本身沒有密碼復雜度策略設置,它是使用Windows操作系統的校驗函數來校驗賬戶密碼的,所以查看SQL server數據庫密碼復雜度需要結合操作系統本地安全策略的密碼策略來看。

下面實驗一下,實驗環境是在Windows server 2008虛擬機上裝了SQL server20008數據庫。

一、設置SQL server的密碼復雜度策略

首先禁用服務器密碼策略

 

 

 

使用sa賬戶登錄SQL server,打開安全性-登錄名-右鍵-輸入登錄名test,選擇SQL server身份驗證,輸入密碼“123”(此時勾選了強制實時密碼策略),點擊確定

 

 

 可以成功創建了test賬戶,並且設置了弱口令“123”,然后右鍵test賬戶看一下屬性。

下圖中顯示test賬戶勾選了強制實施密碼策略,密碼位置:顯示15個圈,是看不出弱口令的。

 

 

 用弱口令登錄test賬戶也是沒有問題的

 

 

 

 

 

 然后開啟服務器密碼策略,使用管理員sa新建一個弱口令賬戶

 

 

 依然使用sa賬戶登錄SQL server,打開安全性-登錄名-右鍵-輸入登錄名test1,選擇SQL server身份驗證,輸入密碼“123”(此時勾選了強制實施密碼策略),點擊確定

 

 

 此時數據庫報錯提示“密碼有效性驗證失敗,該密碼不夠復雜,不符合Windows策略要求”,證明了開啟服務器密碼策略並勾選賬戶強制實施密碼策略,是有效果的。

 

 

但我看了一下Windows操作系統的密碼策略也是挺下飯-..-最少六個字符長!!

 

 

就是說即使開了密碼策略,還可以將密碼設置為Qwe!23的六位數

如果想要設置密碼最小長度的話,在服務器密碼策略上修改就可以了

 

 

 最后試一下開啟Windows操作系統密碼策略,不勾選數據庫賬戶的強制實施密碼策略,看看能不能,設置弱口令

 

 

 

 

 

 果然結果是可以的。

總結一下就是SQL server密碼策略要同時滿足開啟Windows密碼策略並且勾選SQL server賬戶的強制實施密碼策略才算是符合,但即使這樣的話一樣可以設置6位長度的口令,所以還要設置服務器的密碼最小長度值。

 

二、設置SQL server的賬戶鎖定策略

SQL server的賬戶鎖定策略原理也是一樣的,都是參照Windows操作系統的校驗函數來校驗的,所以需要勾選賬戶的強制密碼過期,並且開啟操作系統的賬戶鎖定策略。

然后我試了一下:

 

 

 1、只勾選數據庫強制密碼過期,不設置操作系統密碼鎖定策略

測試同一個賬戶輸錯10次密碼,再輸入正確直接進入數據庫,賬戶沒有被鎖定

 

 

 

 2、勾選數據庫強制密碼過期,設置操作系統密碼鎖定策略

 輸錯三次密碼,再輸入正確密碼,無法進入數據庫,賬戶被鎖定

 

 

 

3、取消數據庫強制密碼過期,設置操作系統密碼鎖定策略

此時使用同一個賬戶輸錯10次密碼,再輸入正確可以直接進入數據庫,賬戶沒有被鎖定

 

總結:勾選數據庫強制密碼過期,設置操作系統密碼鎖定策略

 

 

 


免責聲明!

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



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