可以在Firebase中进行自定义身份验证

时间:2020-03-27 16:09:39

标签: javascript firebase authentication firebase-authentication

我正在尝试使用6位数字代码登录用户。 该代码可使用20秒,并且对每个用户都是唯一的。

简短地解释:

  • 用户已经在移动应用上登录
  • 用户按下“获取唯一代码”按钮
  • 然后,用户在其PC上的网页上输入代码
  • 如果代码正确,请显示该用户的数据

我要问的是,如果我具有userID和有关该用户的所有信息,是否有办法正确验证引入该代码的用户?

我可以尝试“假登录”(在代码正确时显示该用户的所有信息),但是存在一些问题,我想避免这种情况。

我正在使用Firebase身份验证和Firebase Firestore。 JavaScript用于Web。

1 个答案:

答案 0 :(得分:0)

您可以通过为Firebase身份验证创建自定义提供程序来实现所需的任何身份验证方案。

请参见Authenticate with Firebase in JavaScript Using a Custom Authentication SystemCreating Custom Tokens with the Admin SDK

在此流程中,您:

  1. 亲自登录用户。
  2. 在受信任的环境(例如您控制的服务器或Cloud Functions)中为这些用户创建自定义令牌。
  3. 将该自定义令牌传递给Firebase身份验证,然后可以使用它来标识用户并保护对Firestore,Storage和Realtime Database的访问。