2012-07-14 58 views
7

我注意到,stackoverflow只在登錄頁面上使用SSL,並且問題/答案可以通過HTTP發佈。Stackoverflow如何讓用戶通過HTTP登錄?

用戶必須登錄才能這樣做,所以我想知道如果未使用SSL,stackoverflow如何管理以跟蹤哪些用戶已登錄。

目前我正在開發一款使用cookie跟蹤登錄狀態的應用程序。我一直認爲你需要SSL來安全地做到這一點。但是我通過HTTP將它作爲登錄用戶發佈。

我注意到一個名爲'usr'的cookie,當我運行tcpdump -i eth0 -A,然後訪問stackoverflow,並且這個cookie以純文本傳輸,沒有SSL。如果我通過一個不安全的連接(例如WiFi咖啡館)登錄,黑客/數據包嗅探器是否可以使用我的usr cookie並重播會話?

我想避免在我的rails應用程序中使用SSL(因爲我的主機充電胳膊和腿來實現它),所以我想使用與stackoverflow相同的技術。我想保持用戶登錄,沒有SSL。

我猜數據庫(或memcache/redis)會話存儲在這裏使用。但肯定有些餅乾仍然是必需的?這些cookies如何不必通過SSL發送?在背景中是否還有其他事情將這些cookies渲染爲不同機器上的黑客?

+0

我會假設HTTPS用於安全性,但是一旦cookie打開,就可以使用HTTP。 – 2012-07-14 22:20:42

回答

1

以下是我相信會發生的事情或可以在您的應用程序中使用的內容..當用戶通過登錄頁面登錄時,您創建了兩種不同類型的Cookie。您創建了第二個cookie,以便將其專門發送回HTTPS頁面,並且所有其他頁面(包括HTTP & HTTPS)都可以使用第一個cookie(用戶會話cookie)來維護會話以及包含安全信息的所有頁面這是用戶專用的將使用第二個HTTPS cookie ..

通過這種方式頁面喜歡這些可以使用只會話cookie查看,但是當你想查看看到你使用的第二個用戶信息頁面HTTPS cookie ..

希望有所幫助。

+0

謝謝,這是一個不錯的主意 – stephenmurdoch 2012-08-14 19:19:59