RBAC全称:role based access control,基于角色的权限控制方案
核心思路:给角色分配功能权限,把角色分配给员工,那员工就自动拥有了角色下面的所有功能权限
菜单路由权限控制:不同角色的员工进入到系统中看到的菜单是不一样的,根据不同的员工登录控制显示与之对应的左侧菜单就叫做菜单路由权限控制。
为什么使用RBAC,而不是直接将权限分配给用户?
下图是直接将权限分配给用户:
下图是通过RBAC将权限先分配给用户,再给用户配置角色。
相比直接将权限赋给用户,RBAC更加方便快捷。
vue项目中,使用RBAC的整体步骤:
1、获取用户权限
“parking:rule:list”--- parking是一级菜单,rule是二级子菜单,list是页面上的按钮
2、通过数据处理,得到一级菜单标识和二级菜单标识
3、通过数据处理,得到动态路由表数组
4、根据菜单标识过滤原始动态路由表,得到用户对应的动态路由表,以此动态添加路由,渲染菜单