后台管理系统的权限思路
前言: 在一些后台管理的项目中,系统中会出现一些根据用户不同的级别进行使用功能的区分以及不同级别的人定制化需求等等普遍场景。这个时候就需要对使用用户的级别梳理出一个组织架构。例如:
- 首先一定会有一个超级管理员的账户,拥有所有的权限。并可以创建账号。
- . 首先应该有3张数据表来对所有权限相关的数据进行存储。
- 用户表 用户中应该有用户进行登录的账号以及用户所属的部门和岗位
- 角色表 对应的比如上面思维导图中的组长这个职位需要的权限和总监的是不一样的。所以需要有对不用角色有哪些权限进行存储
- 权限表 前端按照颗粒度划分一般分为页面和按钮的权限。比如一个页面有查询 新增 编辑 查看 删除 5个功能。举例按级别区分如下:
- 行政综合部的经理 查询 新增 编辑 查看 删除
- 行政综合部总监 查询 新增 查看 编辑
- 行政综合部组长 查询 新增 查看
- 行政综合部普通员工 查询 查看
如果按照上述的权限进行区分。这个菜单的权限需要新建4个,然后按照权限对应赋给到不同的角色。再让需要的人拥有这个角色。
- 每一个员工在创建账户的时候,需要去赋予对应的角色。用户的信息,用户级别,用户的拥有的角色以及权限进行存储。
登录的时候需要在用户 角色 权限 表中查询出用户拥有的权限,前端根据登录信息判断是否展示菜单,以及按钮。