ASP.NET会员/自动登录现有用户

3
我使用Facebook让用户登录网站。管理登录的页面获取用户的Facebook ID,然后在ASP.NET成员资格表中查找具有匹配ID的现有用户。
无匹配项:创建新用户并登录(没有问题)。
匹配项:我想登录用户。问题是我有散列密码,不能使用MembershipService.ValidateUser(logOn.UserName, logOn.Password)来登录用户。
如果只使用FormsAuthentication.SetAuthCookie,则该用户不会显示为已登录。
我可以在Web.config中将enablePasswordRetrieval设置为true,然后只需获取实际密码,但我不想这样做。我希望这是安全的。
有没有人知道一种仅使用用户名登录ASP.NET成员资格的方法?我已查看了MembershipProvider类以寻找替代方法,但找不到。
谢谢,
奥利弗
2个回答

2
您可以尝试使用FormsAuthentication.RedirectFromLoginPagehttp://msdn.microsoft.com/en-us/library/ka5ffkce.aspx),该方法会设置cookie(我相信,但您可能需要手动设置cookie),然后重定向到指定的页面进行重定向(在配置文件中指定认证设置)。实际上,在设置cookie之后,您必须执行重定向或回发操作,因为应用程序不会显示已启用身份验证。希望对您有所帮助。

看来我一定是测试错了!!使用FormsAuthentication.SetAuthCookie确实有效。 :/ 谢谢!! - Oliver

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接