2013-10-29 69 views

回答

2

如果你不想存儲用戶的數據,那麼你將不得不使用他們已有的現有數據:瀏覽器版本,IP,用戶代理......但這不會很可靠,導致任何網站將能夠看到這些信息,因此會話將變得不安全。
這不會發生在cookies上,因爲它們是「私人的」,它們只能在特定的域下看到。

另一種方法,你知道的是在你的服務器生成的每個html鏈接/表單中添加一個祕密標籤,並使用該祕密密鑰來識別登錄用戶。 這與Cookie類似,但更復雜。你不需要在用戶的機器上「存儲」任何東西......
這種方法存在問題,如果用戶共享鏈接,自定義鏈接,那麼你的祕密密鑰不再是祕密。

編輯:我發現你應該閱讀Node.JS session without cookies

+0

謝謝類似的問題,使用的客戶端已經有這正是我想要做的現有數據。你怎麼看待使用IP地址?那也不安全?我的意思是客戶端可以手動更改他們的IP,還是有可能在同一時間在客戶端重複IP? –

+1

IP是動態的。另外同一路由器下的兩個客戶端將具有相同的IP。所以你應該添加更多的信息來創建一個「獨特的」組合。請記住,如果您的用戶進入另一個網站,那麼該網站也將能夠看到他們的IP,並獲取您使用的相同信息,因此您網站上的會話將不安全。 – TheBronx

相關問題