首页 文章

Firebase验证 Cloud 功能中的电子邮件密码

提问于
浏览
3

我需要在我的网站中接受自定义用户名(需要从biller严格限制字母数字 . )这些用户名应与用户的电子邮件地址互换以便登录 .

我允许用户通过标准的firebase电子邮件密码身份验证注册并使用他们的电子邮件和密码登录 . 用户在账单处注册,然后通过回发将自定义生成的用户名返回给应用程序 .

我创建了一个用户名表,其中包含每个用户名所属的用户的UID(最初有电子邮件,并且生成了用户名)

当用户尝试登录时,我转到用户名表并查找UID . 此时我想使用刚刚查找的UID,以及用户提供的密码,通过 standard firebase身份验证系统登录用户 .

我一直无法找到任何方法来验证用户的密码是否对 Cloud 功能内的查找用户帐户有效,以便我可以生成自定义令牌 .

我可以通过用户名查找用户,查找电子邮件,将其发送回客户端,并允许使用该电子邮件和用户提供的密码进行登录,但更愿意避免使用,因为这将允许用户名和电子邮件地址与不良行为者相互联系 .

1 回答

  • 4

    在您的 Cloud 功能中,除了 firebase-admin 之外,您还可以安装和使用 firebase 软件包,并将其初始化,就像初始化网页一样 . 这样您就可以使用admin SDK查找用户名的电子邮件,然后使用 signInWithEmailAndPassword 从 Cloud 功能中使用 firebase 进行身份验证 . 如果成功,则可以生成自定义令牌并将其发送给客户端 .

    我不知道这是否是最佳方法,但它有效 .

相关问题