2010-12-15 67 views
2

我使用spring security(2.0.6)來執行HTTP BASIC身份驗證。我寫了一個自定義身份驗證提供程序類,用於驗證我的數據庫的用戶名和密碼。我遇到的問題是有些用戶沒有密碼。這些用戶會收到「拒絕訪問」消息。我調試了代碼,發現用戶密碼爲空時,我的自定義身份驗證提供程序未被調用。有誰知道如何解決這個問題?我需要允許一些用戶使用空密碼。如何使用spring security使用空密碼進行基本身份驗證?

+0

所以如果有人沒有密碼,你的安全性就會被打敗,如果你糾正了這個問題。 – Woot4Moo 2010-12-15 22:17:25

+0

這是一項業務需求,我必須要有推動力。是的,它可能聽起來很瘋狂,但有些商業案例有時需要一些帳戶才能在沒有密碼的情況下登錄。 – 2010-12-16 02:15:18

+1

你如何提交空白密碼的請求,例如curl -u用戶:url? – gigadot 2010-12-16 12:17:59

回答

2

寧可沒有密碼,你嘗試在AuthenticationProvider之前的過濾器中設置密碼到一些默認的「NOPASSWORD」?我認爲其中一個pre-auth過濾器做了一個簡單的'if(password == null)'並且失敗了,那是你的問題。

相關問題