我正在尝试为用户实施一项功能,以便用户在登录时在其设置页面中更改其密码,当他们尝试更改该密码时,我要求用户使用旧密码以及新密码,以提高安全性测量。我的问题是我无法找到一种方法来验证用户的旧密码是否正确。有没有简单的方法可以做到这一点?
我在服务器上收到了输入的表单输入,因此解决方案必须在后端(node.js)
非常感谢
答案 0 :(得分:1)
您必须在客户端执行此操作。这不是admin SDK旨在处理的操作。您将要求当前用户输入密码并重新进行身份验证,然后更新密码:
const cred = firebase.auth.EmailAuthProvider.credential(
firebase.auth().currentUser.email, oldPass);
firebase.auth().currentUser.reauthenticateWithCredential(cred)
.then(() => {
return firebase.auth().currentUser.updatePassword(newPass);
})
.catch((error) => {
// Some error.
});