我工作的一個玩具網站,我已經實現了給予好評按鈕,有一個onclick屬性是這樣的:如何設計網站的用戶ID?
Dajaxice.debater.upvote(
upvote_js,//Don't worry about this, it's just dealing with AJAX
{
'username' : 'bob',//bob is the user being upvoted by
}
)
你看到的問題是網頁直接使用用戶名,它是壞的設計,因爲用戶可以輕鬆地打開一個Chrome控制檯,更改用戶名並僞造一個請求說愛麗絲而不是鮑勃。我調查了幾個網站,看到他們正在使用長字符串看起來像哈希代表用戶。我想知道這通常是如何實現的?在更一般的形式,我在尋找一種算法:
- 給出一個唯一的ID爲每個用戶
- 即使這個ID被賦予暴露於用戶或任何第三方,他們將不知道哪個用戶這個id表示沒有使用很長時間或很多內存來計算(反轉哈希)。
服務器如何實施?你在使用框架嗎? – Aya 2013-05-05 10:31:03
@Aya我正在使用django – dorafmon 2013-05-05 10:31:35
你在使用Django的[內置身份驗證框架](https://docs.djangoproject.com/en/dev/topics/auth/)嗎? – Aya 2013-05-05 10:33:30