前端控制数据一致性的安全性方案,以按钮为例

热情的王宗岳
  • 637

以vue,react等任意一前端框架为例:
数据库为MySQL等任意一关系型db,为保证后端效率,去掉外键,改为前端控制数据一致性
如图所示,只有新增的数据可以被删除,而前端将不可删除的数据的delete按钮改为disable,但是问题来了,如果有心人用chrome修改button的disable为false,并点击删除,将破坏数据的一致性。而如果把相关的button隐藏掉,又影响美观,请教前端大牛该怎么破?

是否去掉外键,无论如何一定在后端用写代码控制一致性呢【这步是否可省略】

clipboard.png

回复
阅读 2.7k
3 个回答
✓ 已被采纳

这件事不可以前端做。前端什么都可以造假。你没有按钮,也不行。你有删除接口吧,他们可以用ajax直接调用删除接口。也是可以的。有一个最基本的准则:任何重要的数据需要检验的,后端都必须做。

资源操作必须在后端鉴权和约束啊- -前端没有安全可言
连这点效率都敢省?

用户浏览页面权限是ui层上,是前端开发来做(没有按钮用户也没得点击)

但是数据的处理操作权限得必须后端来做的(别人绕过前端,直接请求接口,必须后端来处理)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏