2012-12-17 47 views
0

我正在使用計算機作爲應用程序的Web專用服務器。 (這樣的會議將不會被共享)Cookie vs會話安全「記住我」功能

我想開發一個安全記得我的功能,我想知道這是做的最好的方式:

  • 會議
  • 餅乾

使用cookie,我將不得不加密用戶密碼,創建一些salt並在數據庫中添加一些字段。 (詳細的herehere

在這種情況下使用會話配置它們的時間會更長嗎?

謝謝。

+0

如果會話不共享,可能會導致錯誤甚至導致安全風險......從技術上講,黑客可以獲得當前所有用戶的憑據。 – cjds

+0

因此會話不安全嗎?黑客能夠訪問他們嗎? – Alvaro

+2

@Steve如果記住我的令牌存放在cookie中,威脅模型與會話cookie相同。但!會話在服務器端保存內存,併爲攻擊者提供上下文,但並不好。記住我的令牌執行重新認證(可以更改令牌值以獲得更高的安全性),另外還可以跟蹤用戶重新認證。我認爲存儲用戶會話即兩週不是最好的應用配置決定:)攻擊者可以很容易地拒絕你的服務器:) – fatfredyy

回答

0

餅乾與會話

PROS的會議:

  1. 會議可能會更容易配置。
  2. 會話對於數量有限的TRUSTED用戶會很有效
  3. Cookie和會話具有相同的威脅模型。如果黑客能夠解密一個cookie,他可以解密會話

缺點

  1. 如果您的服務器被攻擊,攻擊者獲得的上下文。即一大堆令牌,通過它可以解密數據

會話保存服務器端的內存。會話cookie在瀏覽器關閉時也會過期。雖然這可以重新配置(如果你真的努力嘗試)。您基本上最終會重新創建一個新的化身cookie。

總之,Cookies VS Sessions毫無疑問是爲了「記住我」的Cookie。

1

餅乾。

您需要在客戶端存儲一些狀態。 「記住我」的想法是,在沒有會話的情況下回到同一個站點仍然會讓您重新登錄,而不會建立有效的會話。

Cookies允許您存儲狀態。可以有其他方式來做到這一點,但絕對不是會話。