从后端登录用户(firebase+node.js)



我正在寻找一种方法,将用户的电子邮件和密码从客户端发送到我的Firebase后端功能,并从后端登录,我发现了关于Id令牌之类的信息,但我只需要一个简单的功能,接收电子邮件和密码,并向Firebase Auth发出请求。

在firebase的后期版本中,你可能会有类似于"strong"的东西;signInWithEmailAndPassword(电子邮件,密码(",所以我只是在寻找node.js的SDK的确切操作,但我似乎没有找到。

谢谢。

Firebase Auth只允许您在客户端使用signInWithEmailAndPassword。

您不应该在后端验证用户(尽管这是可能的(,因为这可能会产生意外的后果,但您可以在浏览器上使用signInWithEmailAndPassword验证用户,然后验证"ID令牌";到您的后端。

前端(使用firebase(:

const payload = {
uid: user.id,
idToken: await user.getIdToken()
}
//send payload to server

后端(使用firebase-admin(:

const decodedToken = await getAuth(app).verifyIdToken(body.idToken)
//check decodedToken.uid equals body.uid

你可以阅读更多关于";ID令牌验证";此处:

https://firebase.google.com/docs/auth/admin/verify-id-tokens#web