我已经为我正在开发的应用程序提供了Oauth支持。我正在努力解决的是关联Oauth帐户的逻辑。
示例:
假设用户之前已登录。他们使用Facebook验证。我现在有一个电子邮件地址,我可以放心地假设该用户始终是唯一的。但是,Twitter不通过其Oauth实施提供电子邮件地址,因此如果有人使用Twitter和Facebook登录,我该如何正确关联他们的帐户?我不能使用用户名或处理程序,因为显然每个提供程序可能会有所不同。还有其他办法吗?
如果用户使用省略它的Oauth提供商,是否要求用户输入他们的电子邮件地址?我正在努力整合最好的用户体验和最稳定的系统 - 所以我们非常感谢您的帮助。
答案 0 :(得分:0)
如果您正在考虑与多个身份提供商合作,那么您最好的解决方案是使用系统特有的内部ID,然后在外部身份验证发生时将外部帐户与该ID相关联。此外,FB中的用户可以更改其主电子邮件地址,因此可以安全地假设它是唯一的,假设它是最新的可能是不安全的。