最专业的八方代购网站源码!

资讯热点
三个模块,设置后台用户角色权限管理系统

发布时间:2022-8-16 分类: 电商动态

后台用户角色权限系统可以大致分为三十个模块:用户管理,角色管理和权限管理。本文作者将描述三个模块,享受〜

I.用户角色权限系统描述

1. RBAC权限设计模型

(1)RBAC

(基于角色的访问控制,基于角色的访问控制),即用户通过角色和权限与权限相关联,以获得对某些功能的访问权限。权限授予角色,而不是用户,但用户可以拥有多个角色。将角色分配给用户时,该用户具有该角色包含的功能权限。简而言之,用户有多个角色,每个角色都有多个功能特权。以这种方式,它被构造为“用户角色许可”的授权模型。在这个模型中,在用户和角色之间,角色和权限之间,一般是多对多关系。如下图所示:

2.构建后台用户角色权限系统的三个模块

如上所述,后台用户角色许可系统可以总是大致分为三十个模块:用户管理,角色管理和权限管理。用户管理通常由管理部门划分或由业务部门划分。相应部门或组中的用户具有基本相似的功能要求和权限级别。角色管理相对固定。它通常基于业务管理要求。系统中设置的角色标记通常不会随意更改,更像是用户组标记;权限管理内容相对更复杂和丰富,主要包括目标,操作和权限权限,当功能授予用户权限时,相当于授予用户操作目标功能的权限。

角色特权系统属于策略设计范围。它的设计是对PM对业务的理解以及对后台所有功能的熟悉程度的测试。在执行角色权限系统之前,您必须首先了解后台的业务流程和所有功能模块。如果您不理解,请询问相关同事,以避免在设计角色权限系统的过程中出现错误和逻辑漏洞。

二。用户角色权限系统构建的三个模块

1.用户管理

用户管理中的用户主要是功能系统的用户。这些用户是个人员工。这些人通常分为两个维度:行政关系(部门结构)和业务部门(业务结构)。用户管理是这两个维度中员工之间关联的初始分组或分组。在管理部门或业务部门之后,相应部门或组中的用户具有基本相似的系统功能使用要求和权限级别;

注意:上图是根据管理关系的用户管理模式

注意:上图是基于业务关系的用户管理模式

2.角色管理

(1)角色管理

角色通常是根据业务管理要求在系统中设置的固定标签。每个角色对应于显式系统权限。他们拥有的系统权限通常不会随意更改,并且用户不会更改角色。添加和删​​除更改比用户管理更稳定;

(2)自动授权:用户自动输入角色

如果角色与管理关系下的组织部门具有绑定关系,则如果用户进入组织部门,则会自动将用户添加到相应的角色并具有该角色的所有系统特权。如果财务人员[小张]进入财务部门,则用户可以查看财务数据报告和相应的操作权限(例如操作财务审批等),部门员工可以在相应的财务报表系统中查看,而无需额外的授权。 ;

(3)角色授权:用户被添加到角色

企业不断创新和发展。随着业务的发展,将建立和创建越来越多的新角色。例如,该公司新近推出了企业集团餐饮项目,项目部门已经从各个部门找到了更多。每个员工组成一个项目团队,项目的业务权限仅授权员工查看和操作。然后,在这个项目中,将生成一个新的角色,“财务1”,系统管理员将把财务[小张]从财务部门中选择添加到“财务1”的角色,然后[小张]可以获得查看企业集团膳食项目的业务数据报告和操作的权限。通过自动绑定用户管理关系无法实现此类权限的授予;

(4)角色继承:角色权限的继承

权限可以是唯一的或继承的。每个角色都有自己的一组权限。实际上,角色继承是继承父角色的权利。一般角色基于继承其父角色的所有权限而添加一些自己的权限。系统角色继承通常存在于具有明确用户层次管理的团队或公司中;

(5)角色是互斥的:角色中包含的角色是互斥的

角色互斥的业务背景:由于风险控制需要将业务流程划分为多个操作步骤时,有必要为这些不同的步骤授予不同的角色,这些角色需要互斥。例如,在大规模的财务报销审批程序中,在财务人员[小张]拥有审批人权限后,不可能批准小张的批准,以免造成财务风险通过大量报销;

(6)临时角色

通常为特定组设置临时角色。例如,如果公司有一个特殊的访问团队,则需要为这些特殊客户提供一些临时状态,以体验某些功能操作。将这些人添加到部门的组织结构中显然是不合适的,因为这些人只是临时安置,而不是企业员工;其次,这些客户需要体验的功能操作通常跨越多个业务模块和产品。这条线(更复杂),一般公司没有现成的固定角色来满足客户所需的所有操作权限,因此有必要为这些客户提供临时角色,并支持最大的权限空间。临时角色;

(7)黑白名单

3.权利管理

(1)权力管理

权限管理更关注三种不同的粒度级别:功能菜单,功能操作和数据参数。特定粒度的大小取决于公司的结构和团队的规模。如果不需要business属性来将权限控制到非常精细的级别,则无需将权限的粒度拆分为特定操作或按钮。毕竟,后端产品的核心是业务管理平台,主要目标是协助业务的管理和推广。

注意:屏幕截图是背景产品的部分屏幕截图,其中功能菜单页面,功能操作按钮和数据字段可见。

(2)功能菜单权限

对于后台产品,功能菜单的用户权限划分实际上是一种相对粗略的粒度管理模式。在该模式下,一旦用户被授权,就可以使用菜单栏下的所有数据查看权限和功能操作权限;

(3)功能操作权限

功能操作级别权限比功能菜单更深。在这种情况下,不同角色的用户可以进入相同的菜单页面,在后台查看相同的数据字段信息,但他们可以执行的功能不同;

(4)数据字段权限

数据字段级别是更精细的粒度分割,当进入相同的菜单页面背景时,这将使不同用户的不同用户可以看到数据字段。例如,当销售人员进入销售业绩管理背景时,他可以看到自己的绩效改进数据,但财务人员会看到业务工作订单的费用字段。这些字段存在于一个菜单页面中,但受不同角色的限制。仅限许可。

案例研究

1.促销权限系统权限对接

以无权限限制的升级为背景,以访问用户角色权限管理系统为例。详情如下:

注意:以上是产品促销管理的屏幕截图

2.之前的促销背景访问权限制度

在促销后台访问权限系统之前,几乎所有系统权限都处于裸奔状态,并且所有业务线成员都可以查看后台的操作活动内容和操作结果数据,并且可以执行相对敏感的操作。这种情况显然存在一定的管理风险,因此后端系统需要对接权限管理系统的系统管理和风险控制;

3.当系统备份促销时,

在访问权限管理系统的过程中,促销需要反汇编功能模块的权限要素(到一定的粒度),因此有必要根据业务特征判断需要分割的粒度,到功能菜单,功能操作或数据。在明确拆分字段级别后,权限管理系统可以根据粒度授予不同角色的权限;

4.升级后的后台访问权限系统

在访问管理系统进程中访问促销活动后,当相应角色的用户再次登录后台时,后台将首先验证用户角色是否具有功能模块的权限,以及操作权限和角色权限对应的数据字段。权限,验证结果由服务器显示并显示给产品侧的用户。此时,同一用户可以在后台看到可见和可执行的操作,并且访问权限管理系统可能非常不同,这是由基于用户角色的权限管理系统带来的变化。

Q&安培; A

1.用户具有多个角色。你如何处理多个角色之间的互斥?

如果已将用户添加到角色作用域,则在向用户添加与当前角色具有互斥关系的角色时,系统将执行互斥判断,并且后续角色无法将用户添加到用户。成功;

2.如何在业务开发过程中确保不同角色之间明确的权限分离?

随着业务的快速发展,不断增加不同的角色和更多的功能模块,这些角色与功能权利之间的关系将变得越来越混乱。此时,产品经理和业务方需要及时在一起。对于业务的发展,及时,快速地整理业务调整范围,并做出相应的变更;

3.用户权限管理系统的核心难点是前一时期的产品设计吗?

关于用户权限管理系统核心最困难的事情不是以前的产品设计,而是后续的操作和维护,因为特权系统的结构往往不是随意改变的,而是随着开发而快速出现的角色和功能模块业务,以防止角色和功能。权限之间的关系变得令人困惑,在创建新角色和分配权限时需要进行清晰而仔细的调整。

成品〜

本文最初由@阳明(刘同)& @云殊(张俊恒)。未经许可,禁止转载

该地图来自unsplash,基于CC0协议

« 什么是体重?体重是否与代购源码网站有很大关系? | 如何写出赏心悦目的珠三角?擅长形状简单 »