如何根据电子邮件地址和密码从 Firebase 更新或删除用户
Posted
技术标签:
【中文标题】如何根据电子邮件地址和密码从 Firebase 更新或删除用户【英文标题】:How to update or remove a user from Firebase based on Email Address and Password 【发布时间】:2021-08-18 02:29:40 【问题描述】:我可以使用以下命令创建用户:createUserWithEmailAndPassword
我可以使用以下命令登录用户:signInWithEmailAndPassword
(参考:Firebase Password Authentication)
但是,我遇到了用户的密码自上次访问我的应用程序后发生更改的情况。我需要删除 Firebase 帐户并重新创建它,或者更新密码。我在引用的 Firebase 文档中也没有看到任何支持的内容。有可能吗?
【问题讨论】:
【参考方案1】:Firebase 确实通过电子邮件支持password resets,如果这是您正在寻找的。p>
你也可以删除用户,但是如果你没有登录信息而无法访问当前用户对象,你需要使用Admin SDK来manage the users。
【讨论】:
【参考方案2】:如果用户忘记密码,可以requet a password reset email。
如果您想删除用户的帐户,则只能通过 Admin SDK 从受信任的环境(例如您的开发机器、您控制的服务器或 Cloud Functions)中完成。请参阅deleting a user account 上的文档。
【讨论】:
这是我的问题:UN/PW 是在应用程序之外的网站上创建和维护的。用户创建一个网站帐户,稍后使用相同的 UN/PW 创建 Firebase 帐户。然后,用户在网站上更改他们的密码。现在,用户无法登录应用程序,因为 PW 不匹配。所以我要么需要删除并重新创建 Firebase 帐户,更新其密码,要么永久存储原始 PW 以供 Firebase 登录,所有这些都不需要用户做任何事情。这些听起来都不理想,但我需要想办法在我部署的应用程序上进行这项工作。 我想我可能需要清除所有 Firebase 帐户,为每个用户建立一个专用的辅助 Firebase 密码(永远不会更改),并使用该密码自动登录到 Firebase。 我不完全确定你在网站上创建用户是什么意思,但听起来你在两个地方存储了相同的信息——这势必会导致这类问题.我强烈建议仅将用户凭据存储在一个地方(通常是 Firebase),并从中派生所有功能。以上是关于如何根据电子邮件地址和密码从 Firebase 更新或删除用户的主要内容,如果未能解决你的问题,请参考以下文章