2011-02-17 54 views
2

我正在構建一個具有購買和銷售功能的Web應用程序,這意味着我將不得不收集用戶的信用卡信息。所以,我希望用戶重新進行身份驗證自己訪問諸如更改密碼,更新/刪除信用卡等敏感頁面敏感頁面的Java Web應用程序二級安全

我使用Struts,彈簧和Hibernate

我已經工作了一個小方案這裏,但我想獲得一些反饋和批評。

  • 維護春豆中的敏感頁面列表。
  • 創建一個servlet過濾器,查找頁面是否敏感或不敏感,如果頁面敏感,它會在會話中檢查敏感令牌(令牌將在創建時有時間)
  • 如果令牌不存在或令牌生存期超過5分鐘,再次將用戶重定向到認證頁面。
  • 身份驗證頁面在成功登錄後將創建一個令牌並將其放入會話中。

這意味着用戶在單次認證時只能訪問敏感頁面5分鐘。

還有其他更好的方法嗎?提前致謝。

回答

0

如果在過濾器中完成實現,則此配置可以作爲過濾器的配置參數存儲在web.xml中。

順便說一句我認爲重定向用戶登錄頁面可能會降低可用性。你可能想過只是在使用信用卡類型的頁面上添加密碼字段?在這種情況下,您可以顯着簡化您的系統。

+0

謝謝亞歷克斯,但我的一些敏感頁面只顯示信息(地址,貝寶帳戶等),所以這種解決方案將無法在所有情況下工作。順便說一句,我的認證只會要求輸入密碼。用戶名顯示爲標籤。 – firefly 2011-02-17 10:32:55

0

當進行敏感操作時,重新驗證是一種非常好的方法,但完全避免某些任務也有好處 - 可能是某些第三方處理信用卡信息?