所以在过去的几天我一直贯彻Facebook和谷歌的OAuth 2社会登录我的网站的。电子邮件地址与社会登录唯一
一切的伟大工程,基本上是:
- 当他们的电子邮件地址的用户登录进行比较,什么已经在DB
- 如果电子邮件存在的社会登录连接到现有的电子邮件和用户登录到他们现有的帐户
- 否则一个新的帐户制成。 (很像我注意到它在这里工作)
但是,棘手的部分。谷歌可以有两个域的电子邮件:
- gmail.com
- googlemail.com
而如果Facebook帐户在googlemail.com
的谷歌帐户进行(使用gmail
)将无法链接。现在我已经通过检查DB两个gmail.com
和googlemail.com
解决了谷歌Facebook的关系,但如果是反转,Facebook是谁也找不到地址的一个问题就来了。
我以为我可以只添加gmail.com
和googlemail.com
检查到facebook登录功能来检查unqiue电子邮件地址,但我想知道这是否会导致我不能预见的问题。
一些在我脑海里的事情是:
- 与其它API等
- 复杂
- 安全未来的兼容性? (我解决这个问题有点通过使用Facebook的API在
verified
标志) - 其他电子邮件提供商可能有指向同一个帐户双重电子邮件域相同的问题(也许我会写一个巨大的unmantainable列表? )。
所以问题是:加入DB条款通过gmail.com
和googlemail.com
到我的Facebook登录功能,一个坏主意找?
我应该承担gmail.com
和googlemail.com
是两个单独的帐户?
感谢您的想法,
嗯是标准化到一个域,我也这么想过,我可以试试,谢谢 – Sammaye 2012-07-25 19:25:29