一种实现租户分级管理的方法、系统、设备及介质与流程
- 国知局
- 2024-09-05 14:25:57
所属的技术人员能够理解,本发明提供的实现租户分级管理的方法可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。在实现租户分级管理的方法的非暂态计算机可读存储介质中,可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的10列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
背景技术:
1、多租户是单个软件实例为多个不同用户组提供服务的软件架构,这些用户组之间共享资源但保持数据隔离。所谓软件实例包括应用程序、数据库、服务器和网络设备等,而在web开发中,多租户模式已经广泛应用,web应用通过共享数据库资源和web应用代码,为多个租户提供高效、安全、可靠的服务,提高资源利用率、降低维护成本以及提高web应用的运行效率。
2、web应用多租户模式中各用户组之间需要保持数据隔离,格式方式主要有三种,一种是通过不同数据库进行隔离,一种是使用相同数据库,但使用不同的数据结构进行隔离,还有一种是使用相同数据库和数据结构,但区分不同用户组,为每个用户组设置数据表的方式进行隔离。但不管哪种方式,不同用户组之间都进行了数据隔离,以确保安全。但在实际使用时的一个问题是,不同的用户组之间可能存在上下级关系,此种用户组之间需要共享业务数据,但基于多租户的限制业务数据又需要隔离,这就需要额外的数据同步来进行共享,此时就增加了web应用新的开发工作。
3、此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种实现租户分级管理的方法、系统、设备及介质,是非常有必要的。
技术实现思路
1、针对现有技术的上述不同的用户组之间可能存在上下级关系,此种用户组之间需要共享业务数据,但基于多租户的限制业务数据又需要隔离,这就需要额外的数据同步来进行共享,此时就增加了web网页新的开发工作的缺陷,本发明提供一种实现租户分级管理的方法、系统、设备及介质,以解决上述技术问题。
2、第一方面,本发明提供一种实现租户分级管理的方法,包括如下步骤:
3、s1.确定存在租户分级管理需求的目标web应用,并为目标web应用的各租户设置级别字段;
4、s2.为目标web应用配置分级管理开关和级别检查模块;
5、s3.在将目标web应用的各租户的业务数据存储到云平台时,若分级管理开关开启,则启动级别检查模块,识别上下级关系的租户,并在进行业务数据隔离时,将识别为下级的租户的业务数据配置为不对其上级的租户隔离。
6、进一步地,步骤s1具体步骤如下:
7、s11.获取目标web应用的租户分级管理需求,并对租户分级管理需求进行解析,识别租户的级别拓扑;
8、s12.根据租户在级别拓扑中的位置进行编码,得到带有级别信息的租户编码;s13.在目标web应用租户id字段中插入租户编码,从而使得租户id字段作为级别字段。
9、进一步地,步骤s12中具体步骤如下:
10、s121.获取租户的级别拓扑,确定级别数量及每个级别中租户数量;
11、s122.定位最高级别租户,将最高级别租户作为一级租户,设定一级租户的租户编码为基本码;
12、s123.定位次高级别租户,将次高级别租户作为二级租户,设定二级租户的编码为基本码+二级辅助码,并设定不同的二级租户的二级辅助码不同;
13、s124.逐级定位,并将各级租户的编码设定为个上级租户的编码与定位级别租户的辅助码的拼接,并设定定位的同级别的租户仅有定位级别的辅助码不同。进一步地,步骤s2具体步骤如下:
14、s21.在web应用开发工具中为目标web应用设置分级管理开关,并将分级管理开关配置为响应用户指令开启或关闭目标web应用的分级管理功能;
15、s22.在web应用开发工具中创建级别检查模块,并将级别检查模块分配给目标web应用。
16、进一步地,步骤s21中具有分级管理开关设置权限为目标web应用的管理员用户。
17、进一步地,步骤s3具体步骤如下:
18、s31.目标web应用接收前端的业务请求,并将各租户的业务数据向云平台存储;
19、s32.目标web应用检测分级管理开关是否开启;
20、若开启,进入步骤s33;
21、若未开启,不启动级别检查模块,对各租户的业务数据进行正常隔离,结束;s33.目标web应用启动级别检查模块,通过识别租户id字段中租户编码确定各租户级别;
22、s34.目标web应用通过mybatis过滤器进行业务数据隔离时,将低级别租户的业务数据对其高级别的租户作为反向条件,从而不进行数据隔离。
23、进一步地,步骤s33具体步骤如下:
24、s331.级别检差模块启动后,提取各租户的租户编码,并确定租户编码的长度;
25、s332.按照租户编码长度识别各级别租户,其中编码长度长的为高级别,而编码长度短的为低级别;
26、s333.根据编码的相似性确定出各级租户的下级租户,得到租户拓扑。
27、第二方面,本发明提供一种实现租户分级管理的系统,包括:web应用级别字段设置单元,用于确定存在租户分级管理需求的目标web应用,并为目标web应用的各租户设置级别字段;
28、分级管理配置单元,用于为目标web应用配置分级管理开关和级别检查模块;
29、隔离过滤单元,用于在将目标web应用的各租户的业务数据存储到云平台时,若分级管理开关开启,则启动级别检查模块,识别上下级关系的租户,并在进行业务数据隔离时,将识别为下级的租户的业务数据配置为不对其上级的租户隔离。
30、第三方面,本发明提供一种设备,包括处理器和存储器;
31、其中,该存储器用于存储计算机程序,该处理器用于从存储器中调用并运行该计算机程序,使得设备执行上述第一方面所述的方法。
32、第四方面,本发明提供一种存储介质,
33、所述存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面所述的方法。
34、本发明的有益效果在于:
35、本发明提供的实现租户分级管理的方法、系统、设备及介质,通过设置租户的级别字段进行租户级别的识别,从而在进行数据过滤时,不对低级别租户的业务数据向高级别业务数据隔离,进行无需额外的数据同步开放工作,并为租户分级管理设置开关,使用灵活。
36、此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
37、由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
本文地址:https://www.jishuxx.com/zhuanli/20240905/286456.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表