我正在使用一个小型ASP.net MVC4网络应用程序,并使用外部登录选项,允许我的用户使用他们的Google帐户登录。
为了将他们的个人资料与他们的数据联系起来,我需要一个唯一的标识符,并且使用用户名看起来不是一个安全的选择。
我一直在寻找几个地方,获得用户ID的最佳方式是Membership.GetUser()。这适用于本地创建的用户,但不适用于外部用户,返回null。
我如何存档?有没有人找到解决这个问题的方法?
有关OpenId和Oauth的信息在这里:http://blogs.msdn.com/b/webdev/archive/2012/08/15/oauth-openid-support-for-webforms-mvc-and-webpages.aspx
答案 0 :(得分:1)
如果您使用的是SimpleMembership,则可以使用WebSecurity类的.CurrentUserId属性。这应适用于本地帐户和OAuth帐户。