2009-10-13 103 views
4

我有一個兩難的地方,存儲我從Twitter接收的祕密令牌。Twitter與Oauth ASP.NET MVC,在哪裏存儲祕密令牌

選項:

a。將其放入FormsAuthenticationTicket,加密並將其放入Cookie。這足夠安全嗎?

b。把它放進會話,並把USER_NAME到FormsAuthentciation

FormsAuthentication.SetAuthCookie(String.Concat("<em>", screen_name, "</em>"), true); 

這樣,我不得不檢查,如果在會話中第一個祕密餅乾。

c。將祕密cookie存儲在數據庫中,並將用戶名存儲在像b這樣的cookie中。

你推薦哪一個?爲什麼?

非常感謝!

回答

3

由於令牌沒有過期,並且您的應用程序被認爲是該用戶帳戶的授權,所以您需要將令牌存儲在持續時間超過會話的東西中。

在這種情況下,我會將它存儲在與用戶名關聯的數據庫中。

+0

我同意。使用用戶名,令牌和令牌密鑰存儲在數據庫中。 – 2009-10-14 03:43:42

0

我不喜歡用標記存儲'用戶名',因爲用戶名實際上是通過xml獲得的屏幕名稱,並且可以輕鬆更改它。

爲什麼不用存儲'用戶ID'的令牌?