一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种应用数据的隔离方法及系统与流程

2022-11-30 14:51:47 来源:中国专利 TAG:

技术特征:
1.一种应用数据的隔离方法,其特征在于,包括:接收服务请求,并提取所述服务请求中的编码,将所述服务请求封装为内部请求,根据服务容器的应用,对所述内部请求进行鉴权过滤,获得有权请求,根据所述有权请求,访问所述应用;根据所述编码,初始化所述应用的上下文,并将所述上下文的数据临时存储在本地线程中,根据所述上下文和拦截器,将第一操作数据库的第一数据表名添加所述编码的前缀,获得第二操作数据库,根据所述有权请求和所述上下文,操作所述应用的第一数据表和所述第二操作数据库,隔离所述应用的数据与非本应用的数据。2.如权利要求1所述的应用数据的隔离方法,其特征在于,所述接收服务请求,并提取所述服务请求中的编码,将所述服务请求封装为内部请求,根据服务容器的应用,对所述内部请求进行鉴权过滤,获得有权请求,根据所述有权请求,访问所述应用,具体为:接收所述服务请求,根据所述服务请求,获取租户编码和应用编码,并将所述服务请求封装为所述内部请求;根据所述内部请求的授权信息,判断所述租户编码和所述应用编码是否在授权列表,若是,则将所述内部请求标记为鉴权通过,获得所述有权请求,若否,则返回非法访问提示;根据所述有权请求,访问所述应用。3.如权利要求2所述的应用数据的隔离方法,其特征在于,所述根据所述编码,初始化所述应用的上下文,并将所述上下文的数据临时存储在本地线程中,根据所述上下文和拦截器,将第一操作数据库的第一数据表名添加所述编码的前缀,获得第二操作数据库,根据所述有权请求和所述上下文,操作所述应用的第一数据表和所述第二操作数据库,隔离所述应用的数据与非本应用的数据,具体为:根据所述租户编码和所述应用编码,初始化应用的上下文,并将所述上下文的数据临时存储在本地线程中;将所述上下文赋给元数据引擎,根据所述上下文、所述元数据引擎和持久层框架的拦截器,将所述第一操作数据库的第一数据表名中添加所述租户编码和所述应用编码的编码前缀,获得第二操作数据库;所述持久层框架使用所述第二操作数据库去查询或者更新数据,在业务处理的过程中从所述本地线程中获取最新上下文,根据所述有权请求和所述最新上下文,在所述应用中进行所述业务处理,并操作所述应用的第一数据表和所述第二操作数据库,隔离所述应用的数据与非本应用的数据。4.如权利要求3所述的应用数据的隔离方法,其特征在于,所述将所述上下文赋给元数据引擎,根据所述上下文、所述元数据引擎和持久层框架的拦截器,将所述第一操作数据库的第一数据表名中添加所述租户编码和所述应用编码的编码前缀,获得第二操作数据库,具体为:将所述上下文赋给元数据引擎,所述元数据引擎在所述拦截器中获取到要数据操作的数据库,获得所述第一操作数据库;根据分析所述第一操作数据库,获取所述第一数据表名,将所述第一数据表名中添加所述租户编码和所述应用编码的编码前缀,获得第二数据表名;将所述第二数据表名替换在所述第一操作数据库中的所述第一数据表名,获得所述第
二操作数据库。5.一种应用数据的隔离系统,其特征在于,包括:封装鉴权模块和请求处理模块;其中,所述封装鉴权模块用于接收服务请求,并提取所述服务请求中的编码,将所述服务请求封装为内部请求,根据服务容器的应用,对所述内部请求进行鉴权过滤,获得有权请求,根据所述有权请求,访问所述应用;所述请求处理模块用于根据所述编码,初始化所述应用的上下文,并将所述上下文的数据临时存储在本地线程中,根据所述上下文和拦截器,将第一操作数据库的第一数据表名添加所述编码的前缀,获得第二操作数据库,根据所述有权请求和所述上下文,操作所述应用的第一数据表和所述第二操作数据库,隔离所述应用的数据与非本应用的数据。6.如权利要求5所述的应用数据的隔离系统,其特征在于,所述封装鉴权模块包括封装单元、鉴权单元和访问应用单元;其中,所述封装单元用于接收所述服务请求,根据所述服务请求,获取租户编码和应用编码,并将所述服务请求封装为所述内部请求;所述鉴权单元用于根据所述内部请求的授权信息,判断所述租户编码和所述应用编码是否在授权列表,若是,则将所述内部请求标记为鉴权通过,获得所述有权请求,若否,则返回非法访问提示;所述访问应用单元用于根据所述有权请求,访问所述应用。7.如权利要求5所述的应用数据的隔离系统,其特征在于,所述请求处理模块包括本地线程单元、添加前缀单元和处理业务单元;其中,所述本地线程单元用于根据租户编码和应用编码,初始化应用的上下文,并将所述上下文的数据临时存储在本地线程中;所述添加前缀单元用于将所述上下文赋给元数据引擎,根据所述上下文、所述元数据引擎和持久层框架的拦截器,将所述第一操作数据库的第一数据表名中添加所述租户编码和所述应用编码的编码前缀,获得第二操作数据库;所述处理业务单元用于所述持久层框架使用所述第二操作数据库去查询或者更新数据,在业务处理的过程中从所述本地线程中获取最新上下文,根据所述有权请求和所述最新上下文,在所述应用中进行所述业务处理,并操作所述应用的第一数据表和所述第二操作数据库,隔离所述应用的数据与非本应用的数据。8.如权利要求7所述的应用数据的隔离系统,其特征在于,所述添加前缀单元包括获取子单元、添加子单元和替换子单元;其中,所述获取子单元用于将所述上下文赋给元数据引擎,所述元数据引擎在所述拦截器中获取到要数据操作的数据库,获得所述第一操作数据库;所述添加子单元用于根据分析所述第一操作数据库,获取所述第一数据表名,将所述第一数据表名中添加所述租户编码和所述应用编码的编码前缀,获得第二数据表名;所述替换子单元用于将所述第二数据表名替换在所述第一操作数据库中的所述第一数据表名,获得所述第二操作数据库。9.一种计算机设备,其特征在于,包括处理器和存储器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至4任一项所述的应用数据的隔离方法。
10.一种计算机可读存储介质,其特征在于,其存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述的应用数据的隔离方法。

技术总结
本发明公开了一种应用数据的隔离方法及系统,方法包括接收服务请求,并提取服务请求中的编码,将服务请求封装为内部请求,根据服务容器的应用,对内部请求进行鉴权过滤,获得有权请求,根据有权请求,访问应用;根据编码,初始化应用的上下文,并将上下文的数据临时存储在本地线程中,根据上下文和拦截器,将第一操作数据库的第一数据表名添加编码的前缀,获得第二操作数据库,根据有权请求和上下文,操作应用的第一数据表和第二操作数据库,隔离应用的数据与非本应用的数据。本实施例实现一个服务容器中可同时运行多个应用,保证并发时线程的安全性,不同应用数据互相不干扰。不同应用数据互相不干扰。不同应用数据互相不干扰。


技术研发人员:詹伟胜 叶青 温凌敏
受保护的技术使用者:浩云科技股份有限公司
技术研发日:2022.09.02
技术公布日:2022/11/29
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献