一个账号,多种登录方式


One account, multiple ways to login?

我想构建一个允许用户通过以下方式登录的应用程序:

  • 我自己的认证/授权解决方案
  • 第三方提供商,例如"用您的Gmail帐户登录"或"用您的Facebook帐户登录"

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

问题:

  1. 我想的可能吗?(意思是,是否有某种方法可以让我知道Gmail帐户与特定的FB帐户指的是同一个人?)
  2. 对于如何实现这一目标有什么建议吗?

让用户明确地标识他们的帐户。只有当他们对两个账户都进行身份验证时,才允许他们链接两个账户。看看stackoverflow是怎么做的(点击你的个人资料页面上的"我的登录")。

您可能还需要考虑合并帐户的问题。用户可能会创建两个帐户,然后意识到他们只打算拥有一个。您解决这个问题的方法将具体到您的问题域和模式。