我在我的角度应用程序上使用了Firebase。 现在,我想做的很简单。
我的应用程序中有数据,我希望仅对某些向我发送注册链接的用户可以访问。
此注册链接将用户带到一个页面,他们可以在其中填写个人信息(姓名,电话号码,生日),并选择一种进行身份验证的方式:电子邮件/密码或Google登录。
在另一个页面上,我们将其称为“登录页面”,它们使用注册时的相同方式登录。
如果他们选择了电子邮件/密码,则一切正常,我只能将访问权限限制为先前注册并验证其电子邮件地址的用户。
但是,当使用Google登录时,拥有Google帐户的任何人都可以访问该应用程序上的所有数据,即使他们之前没有注册。
据我所知,这是因为电子邮件/密码身份验证使用两个步骤:
createUserWithemailAndPassword(email, password)
哪个创建了新用户
signInWithEmailAndPassword(email, password)
只有经过第一步的用户才能对用户进行身份验证。
但是对于Google身份验证(以及Twitter和Facebook),您只有signIn方法,没有注册步骤的迹象,您可以在其中过滤哪些人可以访问您的应用程序。
那么,我是否缺少某些东西,或者这是Firebase身份验证工作的唯一方法吗?
非常感谢
马修