V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
LeroyMooney
V2EX  ›  程序员

请教网站权限判断问题

  •  
  •   LeroyMooney · 2019-10-18 11:24:28 +08:00 · 2438 次点击
    这是一个创建于 1854 天前的主题,其中的信息可能已经有所发展或是发生改变。

    公司项目是 SpringBoot + Vue 写的,权限判断如:
    在后台判断用户类型,返回值给前端,组件通过 v-if 或 v-show 判断是否显示。
    这种权限判断方式会是否正确?不正确有优化方案吗?
    请教,谢谢!

    11 条回复    2019-10-19 02:04:53 +08:00
    tatu
        1
    tatu  
       2019-10-18 11:32:11 +08:00
    v-show 是肯定不行的,只是 display:none 罢了。
    xcloud
        2
    xcloud  
       2019-10-18 13:05:58 +08:00
    只要前端没有敏感信息就行,后端严格判断请求权限。
    wangyzj
        3
    wangyzj  
       2019-10-18 13:15:25 +08:00
    v-if
    lazyfighter
        4
    lazyfighter  
       2019-10-18 15:45:17 +08:00
    没啥问题,后端接口做好权限校验就好,前端只负责显示
    markzyh
        5
    markzyh  
       2019-10-18 15:53:05 +08:00
    路由控制
    DevinL
        6
    DevinL  
       2019-10-18 16:34:31 +08:00
    最好是后台判断用户类型,并且返回可以请求的权限
    star7th
        7
    star7th  
       2019-10-18 16:53:51 +08:00
    思维上要分清楚前端和后端在权限这个问题上的差异。
    后端要严格判断用户类型,判断权限,只返回应有的数据。
    前端严格来讲是没有权限之分的。只是根据不同用户来显示或者不展示某些页面。v-if 或 v-show 都可以。前端做什么限制都没有安全性可言,因为可以被他人修改(比如浏览器审查元素)。它的作用只是正确地展示给正常用户。真正安全还是靠后端校验,不合法的数据,一开始就不返回
    xuanbg
        8
    xuanbg  
       2019-10-18 17:04:07 +08:00
    前端根据权限显示元素属于交互的优化而非权限的控制,权限控制只能后端实现。
    LeroyMooney
        9
    LeroyMooney  
    OP
       2019-10-18 19:49:11 +08:00
    @tatu 涨姿势了,之前没注意,谢老哥。
    @xcloud 了解!
    @wangyzj 了解!
    @lazyfighter 好的,了解!
    @markzyh 涨姿势了,研究一下,谢老哥。
    @DevinL 了解!
    @star7th 谢老哥,的确之前没意识到“前端严格来说是没权限之分的”!
    @xuanbg 了解!
    musi
        10
    musi  
       2019-10-18 20:42:01 +08:00
    前端你权限控制的再严也没啥用,还得后端
    yamamotoahua
        11
    yamamotoahua  
       2019-10-19 02:04:53 +08:00
    前端能做的也只有 dom 的显示&隐藏,增加&删除了。这种事情用浏览器控制台也可以做到,所以权限还是要靠后端处理。前端负责正确展示后端的数据就好了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1280 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 23:20 · PVG 07:20 · LAX 15:20 · JFK 18:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.