2011-05-10 81 views
3

專家,使用表單身份驗證有哪些安全風險?

我們希望爲我們未來的項目提供更安全的登錄系統,而不是使用會話狀態來判斷用戶是否已登錄。如果我的理解是正確的,一旦用戶通過表單認證進行了認證,就會在用戶機器上生成一個cookie。那有多安全? Cookie是否容易受到與會話劫持類似的劫持形式?如果用戶不接受cookie,該怎麼辦?有沒有更好的方法我應該看看?

在此先感謝。

+0

你也可以做Cookie的Forms身份驗證(一套在web.config)中嵌入的身份驗證票到URL。 – 2011-05-10 19:05:21

+0

就cookie而言,它是加密的。 – CheckRaise 2011-05-10 19:09:26

回答

2

簡短的回答是因爲你把它它是安全的。大多數基於表單的身份驗證系統使用cookie來與最終用戶保持會話,但如果您選擇這樣做,則可以使用其他技術。

對於基於cookie的身份驗證,您需要創建一些標識身份驗證用戶的令牌。這個標記必須是不容易被猜到的東西。該令牌可以通過cookie傳遞或存儲在會話中,在這種情況下會話cookie存儲在客戶端計算機上,並且認證令牌只能在連接的服務器端訪問。如果您不希望緩存中的cookie被捕獲,那麼您可以製作Cookie 安全HttpOnly,前者僅通過HTTPS發送,後者則使Cookie無法從JavaScript訪問。

如果最終用戶不接受cookies,那麼會話ID通常放在URL中,這是不安全的。

看看這個鏈接Session Fixation

0

用戶的會話ID不用作身份驗證cookie的一部分 - 身份驗證cookie和會話cookie是分開的。

爲了防止會話劫持閱讀這篇文章 Foiling Sessiong Hijacking Attempts


提供安全連接,您就必須使用HTTPS

相關問題