Firebase Auth 密码重置 iOS Swift - 更新 Firebase 数据库

Posted

技术标签:

【中文标题】Firebase Auth 密码重置 iOS Swift - 更新 Firebase 数据库【英文标题】:Firebase Auth Password Reset iOS Swift - Update Firebase Database 【发布时间】:2017-10-06 18:49:58 【问题描述】:

我们使用 Firebase AuthFirebase 数据库 进行用户身份验证。出于复杂的原因,我们将用户密码保存在两个位置

用户在 Firebase AUTH 中更改密码后,我们如何更新 Firebase 数据库 /user 节点?

Firebase 身份验证 > 密码重置工作流程中是否有一个完成块,我们可以简单地使用新密码更新 Firebase 数据库?我不确定 Firebase 是否会将新密码传递给我们以在 Firebase 数据库/用户节点中进行更新。

我们的一个想法是使用“updatePassword”函数在 Firebase Auth 中更新用户信息,但 Firebase 表示如果用户有一段时间没有登录,那么用户必须重新认证。所以我们不确定如何解决这个问题。

对工作流程有什么建议或想法或建议吗?

提前谢谢你。

【问题讨论】:

【参考方案1】:

Firebase 身份验证无法泄露用户密码。如果您发现管理员也无法通过 Firebase 身份验证界面获取用户密码。

我尝试过使用云功能来执行此操作,但也没有用。如果用户重置密码,则完全在他们和 Firebase 之间。

我猜你是第一次自己设置密码,然后将它存储在数据库中。但是Auth没有补全功能,可以找回用户刚刚输入的密码。出于安全考虑。

如果您使用 updatePassword 函数,用户必须对数据库中可以存储密码的节点具有写入权限。

【讨论】:

【参考方案2】:

是的,我很确定它是:

Auth().auth.currentUser.changePassword...

如果不只是在线搜索更改用户密码 swift 并查看 Firebase 文档。

【讨论】:

以上是关于Firebase Auth 密码重置 iOS Swift - 更新 Firebase 数据库的主要内容,如果未能解决你的问题,请参考以下文章

Flutter Firebase Auth 密码重置

具有社交媒体身份验证的用户的 Firebase 重置密码问题

Firebase 规则自行重置

Firebase Auth iOS用户匿名创建但未在控制台中显示

如何通过 iOS(swift)将 Firebase Auth 与 MySQL DB 同步?

Django REST-Auth 密码重置