前端控制数据一致性的安全性方案,以按钮为例
以vue,react等任意一前端框架为例:
数据库为MySQL等任意一关系型db,为保证后端效率,去掉外键,改为前端控制数据一致性
如图所示,只有新增的数据可以被删除,而前端将不可删除的数据的delete按钮改为disable,但是问题来了,如果有心人用chrome修改button的disable为false,并点击删除,将破坏数据的一致性。而如果把相关的button隐藏掉,又影响美观,请教前端大牛该怎么破?
是否去掉外键,无论如何一定在后端用写代码控制一致性呢【这步是否可省略】
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这件事不可以前端做。前端什么都可以造假。你没有按钮,也不行。你有删除接口吧,他们可以用ajax直接调用删除接口。也是可以的。有一个最基本的准则:任何重要的数据需要检验的,后端都必须做。
资源操作必须在后端鉴权和约束啊- -前端没有安全可言
连这点效率都敢省?
用户浏览页面权限是ui层上,是前端开发来做(没有按钮用户也没得点击)
但是数据的处理操作权限得必须后端来做的(别人绕过前端,直接请求接口,必须后端来处理)