没有权限系统的ERP,是没有灵魂没有大脑的躯壳,一个权限混乱的ERP,是一个四肢不协调的机器人,哪怕指令再明确,行为也达不到期望要求。本文主要分为五个步骤来教你如何去设计权限系统,一起来看看~

ERP认证标准(5个步骤教你做ERP权限系统一)(1)

引用自百度百科:

权限管理,一般指根据系统设置的安全规则或者安全策略,用户可以访问而且只能访问自己被授权的资源,不多不少。权限管理几乎出现在任何系统里面,只要有用户和密码的系统。 很多人常将“用户身份认证”、“密码加密”、“系统管理”等概念与权限管理概念混淆。

其他的内容就不多复制了,大家自己去看。

在我看来,权限系统用一个成语来概括就是:各司其职。用一个词来形容地位就是:万物之源。用一句话来说明就是:没有权限系统的ERP,是没有灵魂没有大脑的躯壳,一个权限混乱的ERP,是一个四肢不协调的机器人,哪怕指令再明确,行为也达不到期望要求。

扯了些虚的,现在来说点实的。

在搭建一个系统之前,不要急着去把自己脑海中的想法画出来,因为你会发现你根本画不到第三步以后的东西。我们要做的是去弄清楚根源,权限系统是什么?

我用一张图来给大家梳理一下:

ERP认证标准(5个步骤教你做ERP权限系统一)(2)

这里出现了4个名词,分别是岗位、系统、角色、角色组

下面我解释一下四个词的定义。

  1. 岗位:顾名思义,就是你所在的职位Title,即产品助理、产品经理、产品总监。
  2. 系统:ERP系统内的系统,比如:人事系统、财务系统、固定资产管理系统等等。
  3. 角色:你的岗位,在这个系统中所对应的身份,即全局管理员、局部管理员、全局仅查询、部分仅查询或者无权限。
  4. 角色组:就是你所有的角色合并的一个组,称为角色组。

经过上面以上图介绍,各位心里应该也清楚了,所谓的权限管理,其实就是一个:所有岗位对应所有系统权限的管理系统——也就是各司其职

回到之前的问题

一、权限系统原理是什么?

在这里我也不和大家扯一些权限系统的概念混字数,我就默认大家都了解权限的原理,下面我直接开始给大家举栗子,并根据栗子给大家做出分析。

场景一

分析:

从这个场景中,我们得出几个有效信息(其实就是需求分析):

场景二

分析:

其实很明显,这个场景只说明一件事情——权限不同,即使在系统的同一操作页面下,能看到的东西也不一样

上面两个场景,想必大家即便是没做过权限管理系统,也都能看出来。那接下来深入一点聊。

控制力度来看,可以将权限管理分为两大类:

  1. 功能级权限管理(场景一);
  2. 数据级权限管理(场景二)。

控制方向来看,也可以将权限管理分为两大类:

  1. 从系统获取数据,比如查询订单、查询客户资料(场景一);
  2. 向系统提交数据,比如删除订单、修改客户资料(场景一)。

回到之前的问题,如何去设计一个系统呢?用两张图来代替设计原理。

角色管理:给角色设置不同的系统功能 or 可操作数据

ERP认证标准(5个步骤教你做ERP权限系统一)(3)

例如:产品经理在人事管理系统中,具有局部观察员角色,能够拥有查询除工资外所有数据的权限;在财务管理系统中,没有角色,所以没有任何权限;在固定资产管理中,是局部管理员角色,即针对产品部&开发部的增删改查功能等等。

角色组管理:将同一岗位,不同系统角色组合在一起

ERP认证标准(5个步骤教你做ERP权限系统一)(4)

例如:产品经理拥有人事管理的观察员角色,同时又扮演固定资产管理的局部管理员,但没有财务管理的管理员角色。

举个生活中的实际例子,如果你是一名应届生,我列举几个场景、角色、权限。

  1. 学校:学生,只能查询自己的成绩&表现;(普通角色,可以理解为无权限
  2. 学生会:干部,可以获取自己学院部分信息,所有人成绩、获奖等;(局部观察员
  3. 在家:子女,权限由父母提供,大多数事情需要父母审批,但也可以自己做出一些决定。(局部管理员

二、如何去设计权限系统?

Step1:先去设计系统管理页面,里面包含所有ERP系统

ERP认证标准(5个步骤教你做ERP权限系统一)(5)

Step2:在每个系统列表中,可以对角色进行管理

即增删改查,甚至可以加上启用/停用功能。

ERP认证标准(5个步骤教你做ERP权限系统一)(6)

Step3:对启用状态下的角色进行权限配置,即对不同菜单的查询权限

ERP认证标准(5个步骤教你做ERP权限系统一)(7)

Step4:设计角色组管理菜单,可以对角色组进行管理

即增删改查,甚至可以加上启用/停用功能。

ERP认证标准(5个步骤教你做ERP权限系统一)(8)

Step5:给每个角色组添加角色管理功能

ERP认证标准(5个步骤教你做ERP权限系统一)(9)

这几个做完以后,一个简易的权限管理系统也就做完了。

这时可能会有细心的朋友问了,数据呢?数据的权限怎么分?同一系统同一菜单下,不同角色可查数据不同,该怎么分?

告诉你一个很简单的处理方法,给数据贴标签,没有标签的人看不到就行了。具体也不多详述了,开发都懂。(偷个懒)

至于如何给不同岗位的人设置角色组,在我的规划下,是安排在人事管理系统中,由人事专员负责设置及安排。我会在下一篇系列文中给大家描述的。