我是Google OAuth的新手,所以我不太熟悉OAuth身份验证约定。假设用户以传统方式(与Google身份验证无关)使用[email protected]
创建帐户。我们将此帐户称为A。当同一用户使用使用相同电子邮件地址[email protected]
的Google OAuth登录时,该用户应该登录到同一帐户A吗?意思是,用户将能够在其个人资料中看到相同的内容,包括其购买历史,通知设置等。
如果是这样,合并用户信息的惯例是什么?使用Google登录提供自己的given_name
,family_name
和photoUrl
。按照传统,使用电子邮件和密码创建一个帐户将拥有自己的名称和个人资料照片注册。
[否则,您将UID用作什么,因为电子邮件通常是用作UID的常见字段。您可以创建一个单独的用户数据库,一个用于传统登录,一个用于Google OAuth,但这似乎非常无效,因为您知道每次创建相关帖子时都必须搜索两个数据库。
或者当用户尝试创建或在已经存在相同电子邮件地址的情况下登录时,您是否只是拒绝重复?
如果您希望允许用户使用多个提供商登录,则您:
现在用户可以使用电子邮件+密码或Google登录,并且他们在Firebase中的帐户和UID将相同。