在使用facebook或twitter授权后,存储并检索为用户收到的令牌

时间:2013-09-24 21:28:44

标签: c# oauth asp.net-mvc-5 owin asp.net-identity

您好我正在尝试编写一个MVC5应用程序,该应用程序能够在使用facebook或twitter授权后存储为用户收到的令牌。

我想将它存储在数据库而不是cookie中,并将其用于用户未来的任何API请求和登录尝试,以便每次尝试登录时都不会提示他们使用facebook或twitter进行授权使用该方法或尝试访问个人资料信息。

查看成员资格数据库我可以看到有一个名为AspNetTokens的表没有被使用 - 所以有什么我错过了可以使用它的地方吗?

1 个答案:

答案 0 :(得分:10)

因此,如果我正确理解您的问题,您希望将facebook访问令牌保留在您的用户数据库中,以便以后再次使用它吗?

因此,您可以从查看此相关问题开始:How to access facebook data

获得访问令牌后,我实际上只是将其保存为您的用户的自定义用户声明:

manager.AddClaim(userId, new Claim("facebookAccessToken", fbAccessToken"));

然后当你想稍后使用它时,你可以从ClaimsIdentity中为登录用户(User.Identity)取出它