vue.js如何做权限控制,防止普通用户恶意提权成为管理员?

项目组开发了一个vue的应用,在配置测试们做安全检查时发现了一个很大的漏洞:

在我们的许多vue组件上都有一个isAdmin属性,用来判断该用户是否为管理员,这个属性是通过接口取得的,但是通过在chrome的F12开发人员工具里修改这个isAdmin属性,竟然可以将非管理员直接改为管理员!
图片描述
后来我们尝试用vuex来写,把isAdmin写在Vue.$store.state里,发现还是可以人为更改

请教各位,有没有方法在vue里做安全的权限管理?

阅读 668
评论 更新于 2019-08-14
    4 个回答

    前端的权限需要你在登录系统的时候,首先从后端获取当前登陆人的权限有哪些,然后根据后台返回的数据过滤前端路由,就是说根据后台返回的数据将你的路由重新生成一个新的路由,然后写一个公共的方法,判断是否存在,然后再router.beforeEach中判断当前输入的路由是否存在与我新生成的路由中,如果不存在直接返回一个中404页面

    评论 赞赏 2019-08-14