使用“用户名”作为提供者的Firebase身份验证

时间:2019-09-23 14:38:47

标签: firebase firebase-authentication

我有一个使用Firebase身份验证的角度应用程序-电子邮件提供商。应用程序就这样运行,应用程序需要它。

现在,我有一个新客户想要使用该应用程序。唯一的问题是他不希望将电子邮件地址/手机号码用作登录身份。他想创建自己的用户名供用户登录。用户名将是一个字符串,例如:

md,帐户,分支经理,customer_with_weird_requirements等

在应对这种情况时,我想到了两种方法。

  1. 将提供者更改为customauth提供者,引入jwt并具有后端端点
  2. 仅让用户输入用户名并后缀一个通用域网址(例如@abc.com并嘲笑emailauth提供程序

以下是我使用方法遇到的问题

  • 该应用完全由Firestore及其Web SDK驱动。我需要启动一个新的云功能来创建端点。好吧,并非难事,但仅是一个模块,我们就进行了架构上的更改,我不是粉丝

  • 不是处理auth模块的理想方法。同样,重置密码将不起作用,因为其余的链接将发送到首先不存在的user@abc.com。

有什么方法可以使用firebase auth中可用的提供程序,也许通过基本的调整来使您的电子邮件/手机没有强制性?

1 个答案:

答案 0 :(得分:0)

您想要的超出了Firebase身份验证的内置提供程序可以配置的范围。您必须创建自己的提供程序来支持您的需求。

请记住,Firebase提供了一些很好的示例,说明如何构建自定义提供程序,例如username/password provider