微信截图_20180917102001.png

一、什么是用户权限系统

权限管理系统是任何一个企业管理系统内都必备也是非常重要的模块。

现有的权限系统通常基于RBAC(Role-Based Access Control)的思想设计,角色和权限绑定、角色和用户之间的松耦合、多对多的关系来实现授权和授权的快速变更,从而控制用户对系统的功能使用和数据访问权限,以达到企业或机构安全管控的目的。

和用户权限系统密切相关的还有两个模块:账号体系和组织架构。

账号体系,会负责用户账号注册、登录验证、密码找回等功能,其中登录验证(即准入权限)和权限系统有着密切的关系。

组织架构,即公司的行政组织架构。对于大型企业,可能会有总公司、大区、分公司、办事处、部门等各个不同级别的机构,机构之间可能纵横交错,彼此有业务往来,较为复杂;对于小微企业或流程相对简单的业务,通常只有公司,部门两个级别,较为简单。面对复杂的大型企业组织架构,权限系统的设计和实现复杂性会成倍的增加。

二、规划一个权限系统的核心

2.1 核心问题

权限系统要实现的核心目标是对企业业务的安全管控,企业业务对安全性要求的级别,实现安全管控的粒度,是产品经理需要解决的核心问题,依赖产品经理拥有一定的行业经验和对用户实际业务流程、操作有较深的认识。我们使用产品经理通用的思考模型“角色→场景→任务”来梳理这一问题。

2.2 角色

产品的用户和产品不同。

产品的用户有梁宁提出的小闲、小明、小笨这种具备明显性格特征、行为特征的用户。

而产品是强业务、岗位职责驱动,企业组织架构下,具备不同级别不同职责的岗位,就是产品的用户。

因此产品经理弄清楚其行业客户的组织架构下的职位设置、职级设置、职责设置之间的共性即可。

微信图片_20180917102531.png

三、角色

3.1 角色类型

角色从使用的角度划分,一种是管理角色,一种是业务角色。管理角色是针对平台的管理用户,用来划分管理的范围。业务角色是员工在系统中执行各种实际工作流时的角色。

从创建方式的角度划分,一种是内置角色,一种是自定义角色。通常管理角色通过自定义的方式创建,业务角色通过内置的方式创建。

至于系统应该选择用什么样的方式定义权限,根据产品的组织架构,和性质来划分:

  1. 简单类型产品,没有工作流:管理角色和业务角色重合,根据需求做到菜单级别自定义授权,或功能级别自定义授权即可;

  2. 有工作流,但是组织架构较为简单:管理角色自定义到菜单或功能级别,业务角色根据业务流梳理业务角色内置即可;

  3. 复杂组织架构,复杂业务流:管理角色做到应用级别授权,管理员由IT运维人员担任,他们通常不了解业务,因此菜单或功能级别的权限划分给业务角色,业务角色根据工作流引擎内置。由于复杂业务流情况下,系统一定会有一套自定义工作流的引擎,用来随时创建和变更工作流程,因此业务角色通常是各个岗位的岗位名称即可。除此之外,可能还要处理上下级权限继承的关系。

3.2 管理角色

超级管理员

超级管理员角色是拥有最高权限的角色,通常内置一个admin用户,或者是创建某个管理实体的用户。

普通管理员

所有的自定义管理员为普通管理员,其管理权限配置需配置组织部门权限和应用管理权限,组织部门权限是其管理的数据范围,如XX子公司、销售部,应用权限即各个应用。

3.3 业务角色

业务角色的权限体现在工作流中,随着任务在不同岗位之间流转,不同岗位看到的内容完全一样,只是处理的表单不一样。

比如请假审批:一张请假单先通过小组leader到部门leader到人事,数据一致,只是数据的状态在发生改变。根据职位来配置业务角色即可。

一般来说,系统部署好之后,业务角色会完全初始化好,变更的话需要通过工作流引擎中添加,或者通过添加代码的方式增加。通常企业的职位、职级设置都相似,变更的情况较少发生。

3.4 组织权限

组织架构创建之后,会天然的体现组织权限,表现为数据的归属和访问范围,无需创建角色。组织权限是自动赋予在部门级别上的权限。

比如销售部门拥有销售数据提交、查看、分析报表查看、下载的权限,那么一个用户创建到销售部门下后,会自动继承该部门的组织权限,再根据该用户的具体业务角色在确定其具体可访问的数据。

四、权限

4.1 准入权限

准入权限是对用户账号的登录限制,原则上属于用户账号体系,和角色关联不大。通常会有如下功能需求:

进入限制

直接限制账号是否拥有登入平台,或登入某个应用的权限,比如普通员工无法进入人事管理应用。

二次验证

二次验证是在支持验证码,短信验证等多种方式。 

4.2 使用权限

用户的使用权限由其组织权限、业务角色、数据状态共同决定,通常为增、删、改、查。不做过多赘述。

另外用户角色可执行的任务,通常是可以访问的系统页面,在做权限系统时,除了要求用户只能访问被分配权限的页面,在用户通过其他方式,如直接访问url时,需要能够进行阻止。

远齐云开发平台

强壮的组织、人员管理模型

基于多对象的组织描述模型,可以支持各种类型的业务应用。

远齐开发平台业务组织可将对象划分为企业、部门(组织)、人员、岗位等模块,在企业概念下面可以定义不同对象关系,如果企业自己、供应商、客户、合作伙伴、虚拟组织等多种相关性组织,并且可以设置组织的业务关系,满足多形态的信息化业务应用,如:集团业务模型、企业与供应商、企业与经销商、B2B、B2C及混合业务等应用模型。

强大而灵活的权限控制体系

多层次、多维度的权限控制体系,权限定义灵活可靠。

远齐开发平台基于企业、组织(部门)、人员、岗位多维度的权限定义,并且可以根据客户应用系统的功能特点,扩展其它维度的附加权限,如可根据部门管理角色绑定审批权限。


远齐云开发平台,适用于集团、各行业企业的用户权限系统,是您不二的选择~

上一篇:武汉疫情之后,中国即将发生的10大变化 下一篇:什么是Web缓存?