ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

JavaScript-从Firebase中删除用户

2019-11-21 20:34:49  阅读:357  来源: 互联网

标签:firebase javascript database firebase-security


我正在尝试以编程方式从Firebase中删除用户.方法removeuser使用两个参数,电子邮件和密码.现在,不难发现电子邮件,因为该电子邮件存储在auth变量中,我在创建用户时将其添加到数据库中.但是,我应该如何从用户那里找到密码?

当我创建一个用户时,我确实将与该用户一起生成的md5_hash信息添加到我的数据库中.但是,我无法将此值转换回真实密码.

我显然也不想在数据库中存储真实密码,因为这只是在问问题.

所以我想知道,关于如何使用密码从数据库中以编程方式删除用户,我是否有明显的遗漏? (为什么我实际上什至需要他的密码才能将他删除?)

编辑:为了澄清,我只允许管理员删除用户,因此他拥有在我的Firebase中创建的每个用户的列表.让用户删除自己的用户帐户仍然不是那么容易,因为(我认为)firebase哈希算法不是公开的,所以我无法检查他是否输入了正确的密码.

解决方法:

Firebase简单登录是一项建立在Firebase Custom Login之上的服务,并提供了有用的原语,用于通过常见方式对用户进行身份验证.

通过设计,Firebase简单登录无法使您以编程方式访问用户密码,因为这只会增加未安全处理或存储用户密码的风险.如今,可用于删除电子邮件/密码哈希映射的仅有的两种方法是通过使用电子邮件和密码的客户端API,或通过https://< YOUR-FIREBASE> .firebaseio.com上的管理面板. .

请记住,使用电子邮件/密码登录时,Firebase简单登录仅在电子邮件地址和密码哈希之间创建新的映射,但不会在您的Firebase中存储任何信息.另请注意,无法将用户ID“黑名单”,因此,如果删除映射,则用户可以重新创建它.

如果要禁止/阻止用户,更好的方法是在Firebase中为“黑名单”用户创建一个新列表,然后使用安全规则确保该用户在列表中(即,如果用户是root用户,则将其阻止). child(‘blocked-users’).hasChild(auth.uid)).

标签:firebase,javascript,database,firebase-security
来源: https://codeday.me/bug/20191121/2054479.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有