我是根据用户权限,
后端返回用户可用的菜单数据,
前端根据数据 生成 页面:
但感觉 有安全漏洞,
用户直接修改 sessionStorage 或 localStorage 中的 菜单数据
不是就可以绕开权限限制吗?
如果每次都向后端验证又有流畅度的问题
1.前端需要从后端读取菜单加载路由,不能放开所有路由,这样改权限也看不到改的菜单,路由是登录后根据权限load的
2.后端必须需要对调用的API进行检验,流畅性问题是后端需要解决的,你只反馈给后端就行,后端有很多解决方案,redis缓存用户权限,实时检验
在前端根据后端返回的菜单数据来生成页面的做法是可行的,但是提到的安全漏洞确实是存在的。用户可以通过修改本地存储中的数据来绕过权限限制。
为了避免这种情况,可以考虑在后端对用户权限进行验证。这样用户在访问页面时,后端会根据用户的权限信息来决定是否允许访问,从而避免了用户绕过权限限制的可能性。
当然,为了提高系统的流畅度,可以考虑在用户登录后将其权限信息缓存到前端,这样在用户访问页面时就不需要每次都向后端发送求来验证用户权限了。但是这种做法仍然存在安全风险,因为用户可能会修改缓存的权限信息。所以建议在缓存用户权限信息的同时,还要保留一个向后端求验证用户权限的机制,以便在必要的时候进行后端验证。
望采纳。
vue权限问题的完美解决方案
借鉴下
https://www.php1.cn/detail/vue_QuanXianWenT_0608d883.html