2009-11-20 58 views
0

我正在尋找一種方式讓用戶能夠輕鬆連接到我的應用程序,但很少。我想要做的是能夠在用戶的計算機上存儲具有1年壽命的cookie。如果他們在cookie處於活動狀態時訪問網站,他們將自動登錄。長期Cookie

我建議的解決方案是這樣的:初次登錄時,創建一個包含用戶IP地址,上次登錄日期和隨機數的cookie一起哈哈大笑。我還會將他們的用戶ID和IP地址存儲在Cookie中。這些值也將被存儲在數據庫中。如果幾個月後他們再次訪問該站點,則IP地址,ID和哈希將匹配數據庫中的值,然後它們將自動登錄。計算新的哈希值。如果其中任何一個不匹配,則會提示用戶再次登錄。

這個設計是否有任何明顯的安全缺陷?我不擔心IP地址發生變化,這將是大學校園裏的教授。

由於提前, --Dave

回答

0

這個設計是否有明顯的安全缺陷 ?

1

你的問題沒有說清楚這個系統是如何從其他任何標準的長壽命餅乾什麼不同。這些在整個網絡中使用,沒有重大的安全問題,所以我沒有理由不能以類似的方式使用cookie。

+0

雖然我完全自學。這是我研究過的一個難題,所以我自己想出了這個概念。如果這是其他人的做法,那麼很好。但是,我只是想看看別人是否可以在實施它們之前將我的想法分開。 --Dave – 2009-11-20 05:40:12

0

號我會說這絕對是一個安全隱患,如果有人計算出系統。說實話,我會重新考慮這個設置,至少把它存儲在數據庫部分。更不用說,cookies幾乎很少留在別人的電腦上一年,大多數人更頻繁地清理它們。

不過既然你問,創建它是很容易的:

$expire = time()+(60*60*24*365); 

setcookie("login", "mycookie", $expire, "", "yoursite.com"); 

而不是「的myCookie」你可以插入你在談論該令牌。希望有所幫助。

+0

大多數人都不知道cookie的存在,更不用說以任何頻率清除它們的想法。清除它們的人希望從他們登錄的網站中註銷。 – 2009-11-20 01:04:23