2013-03-31 98 views
1

我正嘗試使用Java EE(Hibernate,Glassfish,JSF)製作簡單的登錄系統。我完成了對用戶標識數據的處理,即用戶可以輸入用戶名和密碼,並與數據庫進行覈對,並在其正確的情況下將其記錄下來。但是,我想包含只有會員才能看到的特定頁面。我如何跟蹤會員是否登錄?以及如何獲取特定用戶的信息?例如:使用Java EE的登錄系統

例如:我登錄並要更改我的密碼,因此我會轉到包含我的用戶詳細信息的頁面並輸入新密碼。我如何管理這個服務器端?

我使用servlet嗎?餅乾?會議?我迷路了(a)

我希望我的問題很清楚,並且非常感謝您的幫助。 非常感謝!

+0

[如何處理數據庫中用戶的身份驗證/授權?](http://stackoverflow.com/questions/9965708/how-to-handle-authentication-authorization-with-users-in-a - 數據庫) – BalusC

+0

也許這也將是有用的:[如何在jsf中實現登錄過濾器](http://stackoverflow.com/questions/8480100/how-implement-a-login-filter-in-jsf) – rusty

回答

0

您應該將您的用戶信息存儲爲SessionAttribute,如果會話有用戶,則其他頁面上應該存儲該用戶信息。 如果它已經正確加載頁面,如果沒有,您可以重定向到登錄屏幕。

另一個問題(密碼更改): 您可以使用表單爲此創建一個頁面。您要求用戶輸入他/她的舊密碼,並輸入新密碼兩次。 然後在提交時檢查舊密碼(如在登錄時),檢查新密碼(如果您對此有任何標準,例如:長度,字符類型),如果兩個新密碼相同,請檢查。 如果是這樣,請更新您的數據庫並使用新密碼登錄您的用戶。

2

在Java EE 6中,您可以使用JASPIC API來創建並註冊認證模塊。有許多認證模塊可供重複使用。

然後,您可以爲web.xml中的URL模式配置約束,用戶必須登錄並且需要一個或多個角色。