如何使用ReactJS和Firebase进行安全的管理员处理

问题描述

我想根据登录的用户是否是管理员来添加功能,但是我真的不知道应该使用哪种条件(用于使用删除按钮进行条件渲染等),以检查用户是否为管理员或不。根据用户的ID进行操作是否安全?首先,我考虑过测试我希望他具有功能的每个组件中的用户,使用recoiljs的状态为“ user”,以访问整个应用程序中的用户,但恐怕人们会改变状态使用react工具扩展,然后假装他们是管理员,因此删除文章和内容...测试用户是否是管理员的最佳方法是什么?在react项目中不使用Firebase身份验证?

解决方法

如果没有后端的绝对强制,客户端代码承担管理员职责永远是不安全的。这是不安全的,因为客户端代码可能会遭到破坏,并且可能无法按您期望的方式工作。它运行在用户完全控制的设备上。

客户端代码可以检查某些指示器以查看用户是否为管理员(以您认为合适的任何方式),但是最终检查需要通过安全规则在后端进行(如果您使用的是Realtime等Firebase产品数据库,Firestore或Cloud Storage),或在安全后端(包括Cloud Functions之类的产品)上运行的代码中。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...