2009-10-01 75 views
1

檢查數據庫後,不正確的密碼應顯示在同一登錄頁面上。 我已經使用servlet並將其轉發到登錄頁面,但我無法添加消息「不正確的密碼」。如何在同一登錄頁面上顯示不正確的密碼

RequestDispatcher rd = getServletContext().getRequestDispatcher("/register.jsp"); 
if(dbpwd.equals(null)) {  
    pw.println("Not a registered user!!! sign up......"); 
    rd.forward(req,res); 
} 

在塔上面的代碼中如何打印「未註冊用戶註冊......」在登錄頁面上。

+5

不不不! :)不要幫助壞人!只告訴用戶「不正確的用戶名或密碼」。不要讓攻擊者知道他獲得了正確的用戶名。 – 2009-10-01 10:58:43

回答

2

正如Bob Kaufman所說,您需要將您的錯誤信息更改爲更通用的錯誤信息,例如:「不正確的用戶名或密碼」。

要在登錄頁面上顯示消息,請獲取servlet的響應處理程序,然後在消息中寫入標記。

但是對於更具體的答案,請指定您的問題。

+0

如果註冊用戶輸入的密碼不正確,則應在相同的登錄頁面上顯示「不正確的密碼」。 例如:與gmail類似,如果輸入的pwd不正確,將顯示密碼錯誤消息...... – user174796 2009-10-01 11:30:57

+1

gmail說:「您輸入的用戶名或密碼不正確。」 請參閱:http://stackoverflow.com/questions/1172891 – enguerran 2009-10-01 12:00:07

6

將一個潛在惡意用戶告訴他他做錯了,如果他試圖以惡意的方式訪問您的系統是一個非常糟糕的主意。

另一方面,接收到一條消息,說明「您輸入的用戶名或密碼不正確」的合法用戶在大多數情況下將能夠找出他們做錯了什麼,或聯繫支持人員解決問題。 黑客不會。

不要爲了幫助黑客獲得訪問權限而告訴他他需要糾正哪個字段才能訪問。

+0

this,times infinity – 2009-10-01 12:57:36

相關問題