2013-03-20 58 views
0

我試着在谷歌搜索,但我找不到任何好的例子,用戶名和密碼與數據庫檢查用於身份驗證的目的。用戶認證與彈簧3.0

更簡單的話,我如何使用Spring和Hibernate創建一個簡單的登錄表單,而不是使用數據庫檢查憑據的SPRING SECURITY。

請幫我創建一個簡單的登錄表單,只需要Spring 3.0和Spring Security 3.0。謝謝。

+0

任何人都可以想出一個簡單的例子,我可以看到流程如何? – 2013-03-20 09:37:55

回答

0

最簡單的方法來做一個登錄表單發佈到一個Spring用戶名和密碼作爲參數的控制器。

在控制器中,您可以執行任何想要驗證用戶名和密碼的操作。最好的是委託給一些服務層來照顧它。

如果成功通過身份驗證,那麼您想要做什麼?可能會重定向到說主頁。

現在主頁渲染應該知道用戶已經通過身份驗證。這是春季安全有用的地方。

但是,您也可以通過編寫一個Servlet過濾器來實現,通過檢查http會話來檢查用戶是否已經過身份驗證。當然,成功登錄後,您需要將它存儲在會話中,然後只有篩選器才能使用它。

根據您的要求,還有很多其他方法可以實現這一點,這取決於您的需求,因爲需要進行哪種安全控制。

0

您的解決方案有兩個部分,其中之一涉及到春天,另一個是你的代碼:

// DAO returns null if no such username appears in the table. 
String password = userDao.findPassword(username); 
boolean isValidUser = (!password.equals(null)); 
// Write the code to implement behavior for valid and invalid users. 

如果你可以做一個數據庫中選擇密碼,你可以做春天驗證不使用Spring安全。

您可能需要將該邏輯放在方法調用之前編入的某個方面。

如果超時超時,您可能需要將該結果緩存到會話中並使其無效。