首页 > 解决方案 > 如果用户退出,我如何允许用户更改其密码?

问题描述

我正在使用 Firebase 身份验证。我有电话验证。假设某个用户在他/她退出时忘记了他/她的密码。

电话验证后,我想允许他/她更改他/她的密码。(他/她没有登录)。我不能使用getCurrentUser(),因为他没有登录。用户的帐户是用电子邮件创建的(电子邮件登录方法)。但验证是用电话号码进行的。那么,我该怎么做呢?

标签: javaandroidfirebase-authentication

解决方案


您可以使用updatePassword()更改用户的密码。这是FirebaseUser类的一个方法。当用户登录时,您只能获取其中一个对象。因此,除非用户登录,否则不可能让用户更改自己的密码。

唯一的替代方法是构建一个“后门”,允许用户填写一些表单并将其提交到您的后端,这样您就可以使用Firebase Admin SDK直接更新用户帐户,绕过正常的安全问题. Admin SDK 仅在后端运行,而不在客户端应用程序中运行。


推荐阅读