[英]How to implement a login system in JSP
一個非常基本的JSP問題,因為我仍在嘗試理解正確的處理方式。
我正在使用一個Web應用程序,該應用程序要求用戶在工作之前先登錄。 我想發生的是,每當未登錄的用戶嘗試訪問任何頁面(登錄頁面除外)時,該用戶都會被重定向到我的登錄頁面。
我選擇的方法是在每頁頂部添加一些代碼,嘗試從會話中獲取用戶對象,如果不存在,則重定向到登錄名(我有一個User對象為存在的用戶存儲在會話中,其中包含其他詳細信息(例如權限)。
這是進行身份驗證的正確方法嗎? 還是我應該研究更多標准方法?
編輯:我決定將這個問題分為兩個問題,因為一個問題更多是最佳實踐問題,而另一個問題純粹是技術性問題。 感謝您的答復。
我不知道您是否有這種選擇,但是使用Java EE聲明式安全性可以使您不必將驗證代碼放入每個JSP中。
想法是,在web.xml中指定安全規則,例如: 該 URL模式只能由該角色的用戶訪問。然后,當用戶嘗試訪問受保護的資源時,容器將發出挑戰。 您可以指定自己的登錄頁面,以在遇到用戶挑戰時使用。
我認為這很適合編碼自己的登錄名。
這是有關如何執行此操作的說明的鏈接 。
是的,JSP被編譯為Servlet子類。 早日返回的正確方法是簡單地放置“返回”; 在您的JSP中。
話雖如此,我認為您應該考慮其他身份驗證解決方案。 最終很容易無意間忘記了1個JSP頂部的include,然后您最終不小心允許該頁面上的GUEST用戶!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.