2010-08-08 100 views
2

我有一個代碼來保存cookies的信息關於像用戶名和密碼的用戶。安全Cookie ASP.NET

的問題是:

它並不安全存儲信息,如在cookies.My DB商店明文散列密碼,所以我可以拯救那些hashs在餅乾和以後檢索它們,但如果我這樣做我不會能夠填充密碼的文本框會導致哈希字符串太長。

有沒有解決方法?

回答

7

你永遠不應該以純文本的形式存儲密碼,甚至一個哈希密碼可能容易受到反向查找,除非它被正確地醃製。 ASP.NET Forms Authentication已經允許您創建持久性身份驗證cookie,該cookie允許用戶保持登錄狀態,因此您應該使用它。當Creating the Forms Authentication Cookies時,請參閱超時,過期和IsPersistant屬性。

或者,您可以設置一個token based authentication系統,通過該系統用戶在輸入其登錄信息後獲得安全令牌,並且此令牌在指定的時間內有效。這就是Live ID和Google帳戶的工作方式,他們通常會將該tolken存儲在一個有效期爲幾周的cookie中。