在我的網絡應用程序中,我使用基於表單的登錄。我有一個場景,除了登錄config.xml中設置的表的數據之外,還必須驗證其他數據庫中存在的用戶。j_security_check身份驗證是否可以跟隨其他Web身份驗證機制?
所以,我在想這個流程:
用戶試圖訪問受保護的資源 - >如果沒有有效的會話,會被重定向到登錄窗體 - >用戶輸入他的憑據 - > j_security_check認證爲每個登錄-config.xml - >如果驗證成功,那麼好,否則重定向到一個jsp錯誤頁面,在那裏我檢查用戶是否存在於另一個數據庫(活動目錄是特定的。我已經有代碼來驗證憑證),並創建一個成功的會話 - >否則重定向到錯誤頁面
上面以粗體突出顯示的部分是否可用?
我已經閱讀過一些文章,一旦認證授予j_security_check,就沒有辦法過度規則它。這是真的嗎?
是否有任何其他可能的解決方案(除了從其他數據庫添加到login-config.xml中指定的表或修改login-config.xml)?
(我正在使用Jboss)
謝謝。
感謝您的回覆@Piotr Kochanski。 我已經嘗試了一個替代可能不是最好的解決方案。 我們做了以下事情: j_security_check試圖驗證用戶對我的本地數據庫。 因爲用戶不存在,所以進入錯誤頁面。在這裏,我用servlet替換了錯誤頁面,在另一個DB中檢查用戶,如果他是有效用戶,我在本地數據庫中創建一個條目然後再將這些憑據轉發到j_security_check。現在該條目存在,用戶被允許訪問。 – Sudhakar 2012-05-16 15:56:30