Firebase 使用电话号码对现有的自定义登录流程进行身份验证

Posted

技术标签:

【中文标题】Firebase 使用电话号码对现有的自定义登录流程进行身份验证【英文标题】:Firebase Auth to existing custom login flow with Phone Number 【发布时间】:2021-11-20 10:35:13 【问题描述】:

我有一个应用程序已在 Play 商店上发布,并使用了一些安全规则公开的 Firebase 数据库。因此,为了使规则私有并适合安全规则。我必须实施 Firebase 身份验证。

所以我的应用登录流程的工作原理是通过电话号码 OTP 验证来识别用户。

首先,我不希望用户更改他们的登录流程。就像我不想集成社交登录一样。

那么有没有办法可以将Firebase Phone Auth 用于我现有的流程并获取用户的 uid,以便在 Firebase DB 规则中我可以将该 uid 用于我的身份验证?

请帮帮我!我被困在这个问题上,找不到任何解决方案。

【问题讨论】:

【参考方案1】:

如果我理解正确,您使用不是 Firebase 身份验证的电话号码 OTP 系统来识别您的用户。

我无法将现有流程与 Firebase 的电话号码身份验证联系起来。

想到的两个选项:

将您现有的身份验证系统替换为 Firebase 身份验证,并将其新 (Firebase) UID 映射到之前的 ID 系统。 继续使用您自己的电话号码验证,并在此基础上mint a custom Firebase token for your users,然后use that to sign in to Firebase。不过,生成自定义令牌只能在受信任的环境中完成。

【讨论】:

以上是关于Firebase 使用电话号码对现有的自定义登录流程进行身份验证的主要内容,如果未能解决你的问题,请参考以下文章

使用 Flutter firebase 自定义用户名和密码登录

让用户使用 Firebase 登录(自定义 iOS 身份验证)

在 IOS 中使用电话号码登录 Firebase

在 Flutter 的流构建器中使用 Future 构建器是正确的

Firebase Auth 使用电话号码和密码

有没有办法确定用户是通过自定义 Firebase 帐户还是通过 Flutter 中的 Google 帐户登录的?