一种基于控制组的通用BS架构权限管理控制系统的制作方法

文档序号:29090355发布日期:2022-03-02 02:36阅读:65来源:国知局
一种基于控制组的通用BS架构权限管理控制系统的制作方法
一种基于控制组的通用bs架构权限管理控制系统
技术领域
1.本发明涉及数据处理技术领域,具体涉及一种基于控制组的通用bs架构权限管理控制系统。


背景技术:

2.随着互联网技术的不断发展,各式各样的互联网数据管理后台出现,为各种数据管理提供特定的处理方案,而在这些系统中,数据的管理和人员权限管理是一个共同面对的问题,往往业务系统需要不断变更权限控制以满足业务需要,操作繁琐,易产生数据管理规则不清晰和人员权限不容易控制。
3.在任何一个bs架构系统开发过程中,都要涉及对用户的权限管理,然而现有技术中,系统限制平台功能都是利用角色进行控制,系统一般通过查询数据库来判断是否拥有权限。各种bs架构系统对权限控制方案不尽相同,大体分为单个路由进行角色组权限配置、角色权限配置与通过restfulapi进行读写权限控制两种方案,开发的问题是:单路由权限配置操作繁琐,特定一组路由需要在角色组、角色之间反复操作,并且不利于运营管理人员脱离技术动态分配,角色组区分读写权限成本较高,restfulapi限制严格,很难灵活调整、维护。
4.如现有技术公开号为cn112580003a的中国专利一种基于bs架构的权限控制方法及服务器,包括:获取前端浏览器传回的登录信息;根据登录信息确认用户对应的角色;根据角色获取对应的权限列表,权限列表包括对应角色的权限编码以及对应权限编码的功能模块;判断权限列表是否存在加密的相关权限编码,若是,则将相关权限编码以及登录信息发送给前端浏览器,以使得前端浏览器根据相关权限编码以及登录信息获取对应的加密数据;接收前端浏览器发送的加密数据;将加密数据以及相关权限编码发送给api服务器进行判断;接收api服务器发送的判断结果;根据判断结果决定是否显示相关权限编码对应的功能模块。该技术方案存在以下缺陷:当bs系统业务场景增多,用户访问情况变得复杂,路由管理成本和用户权限管理成本会很高,无法灵活、高效管理用户权限和前端界面根据权限变更,技术成本和运营成本较高。


技术实现要素:

5.为了克服现有技术的不足,本发明的提出一种基于控制组的通用bs架构权限管理控制系统,一种操作简单、规则清晰的数据管理和人员权限控制方法,提高权限管理效率。
6.本发明为实现上述目的,所采用的技术方案是:一种基于控制组的通用bs架构权限管理控制系统,采用如下步骤进行权限管理控制:步骤1,建立路由库业务模块所有路由和权限管理所有路由存储于路由库中,进行路由统一管理和控制组分配,常使用于mysql、orcale、mongodb等关系型数据库,以表格形式存储,即存储于路由表中,系统管理员可以根据业务需要进行增删改查等管理;
步骤2,基于路由库根据业务模块划分权限控制组建立控制组管理表和控制组路由表、控制组用户及用户级别表,以表格形式存储用户、控制组、路由关系后,系统管理员根据业务模块将路由划分至权限控制组,路由在权限控制组中有0、1、2三个level级别,对应权限控制组有0、1、2三级权限:权限控制组0级权限,拥有对应控制组管理员权限,能访问控制组0、1、2三级路由,权限控制组1级权限,拥有对应权限控制组可写权限,能访问控制组1、2级路由,权限控制组2级权限,对应权限控制组只读权限,能访问控制组2级路由。
7.步骤3,s端(即用户端)分配用户权限控制组权限;用户级别分三级包括系统管理员、控制组组管理员和普通用户,系统管理员拥有所有路由访问权限,控制组管理员拥有一个或多个控制组组管理权限, 其中,系统管理员在步骤1中分配权限控制组中分配单一权限控制组拥有路由,系统管理员通过给普通用户分配权限控制组0、1、2级权限,使用户能访问控制组下对应级别路由,同一用户可以同时拥有多个控制组权限,同一用户只具备单一控制组单一级别,控制组管理员除了可访问控制组所有路由外,还具备控制组路由0、1、2级别修改权限,修改控制组下用户1、2控制组权限级别,该系统不会直接操作用户路由访问权限,仅通过控制组来控制用户访问路由权限,用户可访问范围为用户控制组级别下路由访问范围的交集;步骤4,b端、s端协同实现访问控制,b端用户根据s端api响应数据实现bs架构权限管理于访问。
8.进一步的,步骤3中不同用户级别用户将拥有以下操作权限:1)基础功能(包括普通用户、系统管理员、控制组管理员)调用s端用户路由api获取可访问路由列表;调用s端用户路由权限校验api二次校验用户访问权限;拥有控制组级别下对应路由级别访问权限;2)系统管理员在b端账号拥有功能:调用s端路由管理api管理路由库;调用s端控制组管理api管理控制组;调用s端控制组路由管理api管理控制组路由权限;调用s端控制组用户管理api分配用户控制组权限;3)控制组管理员拥有功能调用s端控制组路由管理api管理控制组路由读写权限调用s端控制组用户管理api管理控制组成员控制组访问权限进一步的,步骤4中前端根据可访问路由列表实现菜单、按钮变更、界面刷新,实现方案如下:b端通过不同用户权限,控制特定菜单、按钮、视图模块的显示/隐藏,实现同一视图提供给不同用户不同视图特征,同时,视图上,实现用户仅能看到所拥有权限的相关内容。其中,实现特定视图(菜单、按钮展示隐藏)渲染(初始化、刷新)实现方案如下:1)视图渲染层建立特定菜单/按钮/视图模块-路由权限映射,保留显示、隐藏开关;2)b端调用s端用户路由api获取可访问路由列表;
3)基于2)中s端返回值,当特定菜单、按钮、子视图映射路由存在该用户可访问权限列表中时,显示对应菜单、按钮,否则隐藏;4)初始化用户当前视图;5)用户操作(点击、快捷键等)触发访问特定路由;6)服务端判断用户该路由访问权限,并返回权限判断状态值permission_status如下值:0:用户具备正常访问权限1:用户具备正常访问权限、用户权限已变更2:用户不具备路由访问权限7)当6)中s端返回permission_status获取值为1、2时,b端重复2)、3)、4)步骤,实现用户权限变更-b端界面更新,当b端获取permission_status为0时,b端根据业务数据刷新需更新视图展示业务数据。
9.以上,1)、2)、3)、4)为b-s端协同初始化视图,5)、6)、7)为b-s端协同实现视图更新。
10.其中,用户访问特定路由,根据b端参数完成特定路由逻辑,如5)、6)、7)中permission_status=0实现b-s协同更新b端视图个a过程。
11.本发明的有益效果是:通过本发明权限控制组实现路由访问用户路由、访问权限解耦,灵活根据不同用户群体划分控制组、调整特定控制组特定权限;集成读写控制、菜单控制、账号分级控制,非技术人员(控制组管理员)只需要修改控制组路由级别、用户控制组权限级别,即可控制普通用户路由访问权限,便于维护管理,系统人员负责创建路由、修改控制组包含路由,设置用户控制组权限账,即可全面控制权限分配。
附图说明
12.图1为本发明的用户、路由、控制组表结构存储关系图。
13.图2为本发明的架构权限管理控制框图。
具体实施方式
14.为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
15.在一个实施例中,如图1所示,本发明的一种基于控制组的通用bs架构权限管理控制系统,优化路由管理分配、用户权限控制流程的方法实现,控制组即为根据业务模块对路由分组,组内路由有0、1、2三个级别,需要说明的是,bs架构即浏览器和服务器架构模式,其中用户操作和浏览在b(browser)端浏览器等前端浏览工具实现,业务数据处理、事物逻辑处理在s(server)服务端实现,路由指单个api(appliocation programming interface)接口的具体访问地址,通信通过b端调用api并根据s端响应具体业务数据进行界面渲染,业务路由指权限管理之外得其它具体业务访问地址总称。基于控制组的通用bs架构权限管理控制系统架构包括如下步骤:
步骤1,建立路由库业务模块所有路由和权限管理所有路由存储于路由库中,进行路由统一管理和控制组分配,常使用于mysql、orcale、mongodb等关系型数据库,以表格形式存储,即存储于路由表中,系统管理员可以根据业务需要进行增删改查等管理;步骤2,基于路由库根据业务模块划分权限控制组建立控制组管理表和控制组路由表、控制组用户及用户级别表,以表格形式存储用户、控制组、路由关系后系统管理员根据业务模块将路由划分至权限控制组,路由在权限控制组中有0、1、2三个level级别,对应权限控制组有0、1、2三级权限:权限控制组0级权限,拥有对应控制组管理员权限,能访问控制组0、1、2三级路由,权限控制组1级权限,拥有对应权限控制组可写权限,能访问控制组1、2级路由,权限控制组2级权限,对应权限控制组只读权限,能访问控制组2级路由;步骤3,s端分配用户权限控制组权限用户级别分三级,系统管理员、控制组组管理员和普通用户,系统管理员拥有所有路由访问权限,控制组管理员拥有一个或多个控制组组管理权限, 其中,系统管理员在步骤1中分配权限控制组中分配单一权限控制组拥有路由,系统管理员通过给普通用户分配权限控制组0、1、2级权限,使用户能访问控制组下对应级别路由,同一用户可以同时拥有多个控制组权限,同一用户只具备单一控制组单一级别,控制组管理员除了可访问控制组所有路由外,还具备控制组路由0、1、2级别修改权限,修改控制组下用户1、2控制组权限级别,该系统不会直接操作用户路由访问权限,仅通过控制组来控制用户访问路由权限,用户可访问范围为用户控制组级别下路由访问范围的交集;步骤4,通过b端、s端结合实现访问控制;b端用户根据s端api响应数据实现bs架构权限管理于访问,b端通过不同用户权限,控制特定菜单、按钮、视图模块的显示/隐藏,实现同一视图提供给不同用户不同视图特征,同时,视图上,实现用户仅能看到所拥有权限的相关内容。
16.在一个实施例中,结合图2所示,基于步骤(1、2、3)中控制组实现的通用bs权限管理系统,包括:步骤a:建立步骤一、二、三所需路由表、控制组表、控制组路由表、用户控制组权限表及其它业务所需数据表及服务端业务逻辑实现;步骤b:系统管理员根据业务模块划分控制组、控制组与路由关系,根据运营需求授予用户特定控制组特定级别权限;步骤c:用户登录,调用用户路由api获取可访问路由列表,b端通过可访问路由列表实现菜单、按钮显示隐藏等界面调整;步骤d:用户访问特定路由,根据b端参数完成特定路由逻辑。
17.在一个实施例中,前端根据可访问路由列表实现菜单、按钮变更、界面刷新实现方案如下:1)前端基于访问权限建立对应路由-菜单/按钮关系数据表,常用json、xml等数据结构存储;2)视图渲染层保留对应菜单、按钮权限判断开关;3)调用用户路由api获取可访问路由列表,获取当前用户可访问路由列表;4)基于3)中值,当指定菜单、按钮对应路由存在改用户可访问权限列表中时,显示
对应菜单、按钮,否则隐藏;5)刷新当前view;6)根据用户触发操作访问特定路由(点击、快捷键等);7)服务端判断用户该路由访问权限,并返回权限判断状态值permission_status如下值:0:用户具备正常访问权限1:用户具备正常访问权限、用户权限已变更2:用户不具备路由访问权限8)当5)中permission_status获取值1、2时,重复3)、4)、5)步骤,实现用户权限变更-b端界面更新。
18.在一个实施例中,步骤3中不同用户级别用户将拥有以下操作权限:1)基础功能(普通用户、系统管理员、控制组管理员) 调用s端用户路由api获取可访问路由列表 调用s端用户路由权限校验api二次校验用户访问权限2)系统管理员在b端账号拥有功能:调用s端路由管理api管理路由库调用s端控制组管理api管理控制组调用s端控制组路由管理api管理控制组路由权限调用s端控制组用户管理api分配用户控制组权限3)控制组管理员拥有功能调用s端控制组路由管理api管理控制组路由读写权限;调用s端控制组用户管理api管理控制组成员控制组访问权限。
19.在一个实施例中,以控制组管理员用户为例,其具有以下操作权限:1)拥有当前控制组路由管理权限和当前控制组用户管理权限;2)b端(浏览器)界面当前控制组路由管理菜单、控制组用户管理菜单、按钮展示;3)界面上用户级别、路由级别修改;4)b端调用控制组用户/控制组路由修改api;5)服务端判断当前用户权限,返回permission_status值为0;6)执行业务逻辑、变更用户与控制组关系/路由与控制组关系存储;7)服务端返回操作结果;8)b端界面刷新;9)对应控制组相关用户权限变更(对应控制组用户b端操作时触发更新),其中权限被影响用户会在b端执行操作5时完成步骤c中5)、6)、7)中视图更新,实现权限变更。
20.通过本发明基于控制组的通用bs架构权限管理控制系统,通过系统管理员针对业务模块划分控制组,降低路由管理成本,取消用户与路由直接分配关系,通过控制组管理员对控制组内路由、用户的管理,实现了根据模块和用户群体(控制组级别下用户)对用户权限进行管理,简化、提高了运营人员对业务模块管理能力,使稳定系统脱离研发人员进行权限管理成为可能,以满足当前bs架构系统日益庞大、bs系统用户访问日益复杂、灵活的市场需求。
21.以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1