2015-07-10 246 views
1

我有一個普遍的問題。我有一個使用Cookie進行認證的Web應用程序。此外,該cookie由服務器驗證。服務器註銷失敗>僅客戶端註銷?

但我應該在以下情況下做到:

  • 在註銷用戶點擊按鈕
  • 通過AJAX註銷請求被髮送到服務器
  • 服務器關閉或阻斷一個黑客,所以註銷請求不通過

問題是。我現在應該怎麼做?

  1. 顯示錯誤消息,並且(再次?我該說什麼)保持記錄在客戶端(我該說什麼?)
  2. 註銷客戶,並顯示一條錯誤消息
  3. 註銷客戶端和不顯示任何消息。 (在黑客攻擊的情況下,黑客可以使用客戶端身份驗證令牌,因爲服務器不知道任何東西,但客戶端沒有注意到任何東西)

回答

0

希望你有一個短會話超時,所以無論如何20分鐘左右用戶將被註銷。

這是一種基於意見的建議,但我的建議是如果可能的話,清除cookie客戶端 - 只有當您的會話cookie不是httponly時,它才應該是這樣。如果因爲攻擊者阻止訪問註銷URL而無法登錄客戶端,則:

是的,顯示一條錯誤消息以通知用戶。畢竟,他們的賬戶處於風險之中。 「你無法註銷,請重試,如果問題仍然存在,請與我們聯繫,建議清除你的cookies。」

所以要回答你的問題,最好的回答是#2,但是如果你有會議安全作爲優先事項,這可能是不可能的,所以你將不得不去與#1。

+0

感謝您的答覆。由於我們使用JWT來完全無狀態,所以我們可以在客戶端註銷。但感謝通知。 – waXve