产品设计-后台管理权限设计RBAC

最近在做OA系统,设计到不同的员工会拥有不同权限对OA进行操作,总结了一下整体的设计

做权限的分配就是为了更好的管理不同类别的员工,如人事部可以看到普通员工的薪酬,可以查看全部员工的考勤数据请假等,而普通员工只需要在OA上做一些申请审批的操作,如请假加班等。

如果给每个人都设置一遍操作,久而久之会导致管理混乱,无法将同一类别的员工进行集中管理,只能一个个的去编辑修改权限。

对于权限来说,主要分为:页面权限、操作权限、数据权限。页面权限就是哪些页面是可以被看见的,操作权限就是能否对页面的数据进行增删查改审等操作,而数据权限则是一些敏感的数据,财务部能不能看见人事部可以看见的数据等等。所以我们需要将同类别的员工进行集中分配权限,这个时候就引用一个叫角色的东西,利用将权限(页面、操作和数据)挂在角色上,而将角色分配给不同的员工,不同的角色拥有不同的权限,可以分配给对应的员工,同时一个员工也可以拥有多种角色,就不会出现每个员工都有不同的角色,而需要统一管理时会很麻烦。

首先在后台需要设计:角色管理页面

每创建一个角色,就给角色挂上页面和操作。数据权限我们系统目前是没有做的。

角色创建完,就可以给每个员工勾选上对应的角色,当角色的权限发生更改时,员工所拥有的权限则会跟着被修改。

一个角色可以对应多个员工,一个员工也可以对应多个角色,但是权限本身是无法直接跟员工相关联的,只能通过角色作为桥去连接权限和员工。

当员工多了,利用角色分配权限的功能的好处就会越明显,利用集中去管理分散的员工权限,这在其他事物中也是通用的规则,也是分类的重要性。

原文地址:https://www.cnblogs.com/z-s-q/p/10031108.html