编码平台:带C#的ASP.NET 4.0 WebForms
我们有一个网站与现有的登录详细信息管理的ASP.NET会员提供商。
现在客户端希望将Facebook Connect添加到其中。
所以在注册时,我会使用Facebook按钮进行注册。
我应该如何继续将成功的身份验证从facebook集成到我的会员提供商?
我正在计划创建一个具有唯一标识符的用户名作为ASP.NET会员中的新用户,并将其链接到包含其他open-id用户的另一个表(因为在未来我们计划扩展到谷歌,推特,现场和所有)。这是最好的方法吗?
发布于 2011-03-05 16:40:16
好吧,我想你有两个选择。
选项A:使用Facebook Registration Plugin,然后将用户注册为常规用户,即没有FB用户id存储到数据库中,您只有一种类型的用户。
选项B:在您的FB连接中请求email permission,并获取用户电子邮件,以便与您的用户表进行比较,并进行匹配(您的用户表id与FB uid),以防它被发现进入您的数据库。
哈!
发布于 2011-03-24 06:42:13
等等,在codeplex上有一个facebook开发者工具包?我要是知道就好了。:-p
我注意到,大多数允许你通过Facebook或电子邮件登录的网站只会让你选择其中之一。例如,我有一个LivingSocial.com帐户--虽然他们提供FB,但我只能通过我的电子邮件登录(因为我的帐户就是这样创建的)。我有一个BrazenCareerist帐户,但让我只使用我的FB登录(即使他们支持电子邮件),因为该帐户是通过FB连接/打开图形创建的。
我不喜欢这种方法,因为它感觉有限制-所以我希望用户能够以他们想要的任何方式登录。您有4个流:
如果他们注册了facebook,获取他们的电子邮件地址以备将来使用(通过FB API)。
假设他们已经在你的网站上注册了,那么当他们用FB登录时,就不需要要求密码了。(查看他们的文档http://developers.facebook.com/docs/authentication/)
如果他们使用电子邮件地址登录,则需要输入密码。如果他们注册了他们的电子邮件地址,他们可能会创建on;但诀窍是,如果他们注册了FB,他们可能没有密码。
我创建了一个页面,在FB注册后,要求输入密码。它会给出一条友好的消息,比如“恭喜!你在我们网站上的账号已经创建了。为了你的隐私,facebook不会告诉我们你的密码是什么。请在下面为我们的网站创建一个密码。(只要你在facebook上登录,你就永远不会使用这个密码)。”
希望这能有所帮助。
发布于 2012-01-14 23:15:19
CodePlex上的Facebook C# SDK项目提供了一些很好的入门示例项目。我使用的是CS-AspNetWebForms-RegistrationForm示例。这很容易理解,但我有一些问题,比如获取Facebook的UserID。
缺少的一块拼图是获取那些你从Facebook注册中得到的字段,并将这些字段推送到会员提供商。根据你的经验水平,解决这个问题应该不会那么难。
https://stackoverflow.com/questions/5159010
复制相似问题