2011-09-25 35 views
1

我想建立一个应用程序,允许用户通过以下登录:一个帐号,多种登录方式?

  • 我自己的身份验证/授权解决方案
  • 第三方供应商,如或“日志“与您的Gmail帐户登录”与您的Facebook帐户”

我担心的是,个人可以使用我的应用程序的解决方案创建一个帐户,并有一个Gmail帐户,并有一个FB账户,等等。虽然可能有不同的方式对一个人登录在,他们仍然都是指同一个人。尽管有多种登录方式,但我希望能够弄清楚它们是否指向同一个人。

问题:

  1. 是我在想什么甚至可能吗? (意思是说,有什么方法可以弄清楚某个Gmail账户是指具有特定FB账户的同一个人?)
  2. 关于如何实现此目的的一般策略的任何建议?
+0

除了通过IP或会话变量进行检查外,我不认为有任何方法可将单独网站上的无关帐户链接在一起。 –

+0

您可以随时要求用户链接它们:他们在您的网站中有一个地方可以将Facebook /电子邮件帐户链接到他们的帐户,然后将其存储在数据库中 – JCOC611

+0

所有帐户的电子邮件地址可能很常见。您可以在登录时检查,但仅当用户来自列入白名单的提供者(您知道验证地址的用户)时才能检查。 –

回答

2

让用户明确地识别他们的帐户。只有让他们链接两个帐户,一旦他们通过了身份验证。看看如何使用stackoverflow(点击你的个人资料页面上的“我的登录信息”)。

您可能还想考虑合并帐户的问题。用户可能会创建两个帐户,然后意识到他们只意味着拥有一个帐户。您解决这个问题的方式将针对您的问题域和模式。

+0

如果他们注册我自己的解决方案,那么我有他们的电子邮件地址。如果他们用他们的GMail帐户登录,我会有他们的电子邮件地址吗?如果是这样,我不能用它来连接帐户吗?然后,如果我可以得到用户注册FB的用户电子邮件地址(问题是用户可能使用不同的电子邮件地址作为他们的FB账户),那么与Facebook相同。 – StackOverflowNewbie

+0

您已经正确识别出此策略在所有情况下都不起作用的原因。您必须支持具有多个电子邮件地址的用户。 –