2009-10-13 129 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'的令牌?