[英]How to make Firebase user in flutter outside the google sign in function?
[英]Flutter google sign in only when user exist in firebase?
我正在使用两个包进行 firebase 授权:
当我调用登录方法时
final FirebaseUser user =
(await _auth.signInWithCredential(credential)).user;
它在 firebase 授权表中创建一个用户。 有没有办法检查具有此社交提供者数据的用户是否存在,如果他不存在则拒绝授权? 我的意思是只有谷歌登录方法。
您可以使用fetchSignInMethodsForEmail
方法来确定用于使用凭证中的 email 地址登录的登录方法。 如果其中包含google.com
登录方法,则用户之前使用此帐户登录到 Google 提供商。
但请注意,这不会阻止用户自己调用signInWithCredential
API。 因此,虽然您可以使用这种方法为用户优化 UI 流程,但您无法阻止恶意用户仍然在您的 Firebase 项目中创建帐户。
这是客户端身份验证的本质所固有的:您不能阻止用户证明他们是谁。 但是,您可以做的是限制他们可以访问的内容。 如果您使用 Firebase 后端服务为您的应用存储数据,这是通过使用 Firebase 的服务器端安全规则来控制用户可以访问的数据来实现的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.