[英]Firebase get current user password
我有用户个人资料页面。 在那里我有三个字段。 姓名、电子邮件、密码。 我可以获取姓名和电子邮件,但无法获取用户密码。 如何获取用户密码并将其存储在 v-model 指令中。
<template>
<div class="profile-outer">
<input type="text" v-model="profile.name">
<input type="email" v-model="profile.email">
<input type="password" v-model="profile.password">
</div>
</template>
data() {
return {
profile: {
name: '',
email: '',
password: '',
}
};
}
created() {
firebase.auth().onAuthStateChanged(user => {
if (user) {
this.profile.email = user.email;
this.profile.name = user.displayName;
console.log(user);
} else {
}
})
},
使用onAuthStateChanged()
方法,您可以在回调函数中获得一个User
并且无法从这个 User 对象中获得用户密码。
实际上,出于安全原因,使用客户端 SDK,您无法获取用户密码。
如果您真的希望能够从应用程序前端获取用户的密码,您可以将其保存在特定的数据库记录中。 但是,在这种情况下,您需要实现自己的密码更新机制(例如通过 Cloud Function)以避免“真实”用户密码与存储在数据库记录中的密码之间的不同步。 例如,如果用户可以执行sendPasswordResetEmail()
方法,则不会使用新密码值更新数据库文档。
最后,请注意,如果您选择这种方法,您应该注意使用安全规则正确保护用户(数据库)记录。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.