[发明专利]一种数据隔离方法、服务器及系统在审
申请号: | 202111639196.5 | 申请日: | 2021-12-29 |
公开(公告)号: | CN114328530A | 公开(公告)日: | 2022-04-12 |
发明(设计)人: | 曹其顺;田振营;李玉;邱韶杰;岳杨;戴毅;丁振强 | 申请(专利权)人: | 深圳市讯方技术股份有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/242;G06F16/28 |
代理公司: | 深圳市六加知识产权代理有限公司 44372 | 代理人: | 陈金赏 |
地址: | 518067 广东省深圳市南山区招*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 隔离 方法 服务器 系统 | ||
本申请公开一种数据隔离方法,应用于服务器,该方法包括:获取第一数据库语句和与其对应的租户身份信息;识别第一数据库语句中的关键词,根据关键词确定第一数据库语句的语句类型;根据关键词和语句类型对第一数据库语句进行语句拆分,确定关键表;将租户身份信息作为查询条件添加到关键表中,生成第二数据库语句。通过将租户身份信息添加到第一数据库语句中,以一种低代码量的方式实现多租户架构,并且租户间的数据彼此隔离,保障了系统的安全性。
技术领域
本发明涉及网络应用领域,特别是涉及一种数据隔离方法、服务器及系统。
背景技术
随着互联网和云计算技术的飞速发展,越来越多的Web系统采用SaaS(Softwareas a Service)化平台。现在,SaaS平台的用户数据存储隔离多采用共享数据库、共享数据库对象的集合和共享数据表的形式。
多租户是一种架构,可以让多个租户(tenant)共用一套程序,并且可以保证用户间的数据隔离,在多租户技术中,租户包含在系统中可识别为指定用户的一切数据,通过添加租户身份信息的方式,可以在数据库中实现对不同租户的数据的隔离。
发明人在发明创造过程中,发现现有多租户架构的代码量不够精简,因此有必要在采用共享数据库、共享数据库对象的集合和共享数据表的数据存储模式下,在确保各用户间数据的隔离性的前提下,提供一种低代码的多租户架构方法。
发明内容
本申请提供一种数据隔离方法、服务器及系统。通过将租户身份信息添加到数据库语句中,以低代码量的方式实现多租户架构,并且租户间的数据彼此隔离,保障了系统的安全性。
本发明实施例提供以下技术方案:
第一方面,本发明实施例提供一种数据隔离方法,应用于服务器,方法包括:
获取第一数据库语句和与其对应的租户身份信息;
识别第一数据库语句中的关键词,根据关键词确定第一数据库语句的语句类型;
根据关键词和语句类型对第一数据库语句进行语句拆分,确定关键表;
将租户身份信息作为查询条件添加到关键表中,生成第二数据库语句。
在一些实施例中,方法还包括:
根据关键词和语句类型对第一数据库语句进行语句拆分,确定第一数据库语句是否嵌套有子查询语句;
若第一数据库语句有嵌套子查询语句,则识别嵌套子查询语句中的关键词,根据嵌套子查询语句的关键词确定嵌套子查询语句的语句类型;
根据嵌套子查询语句的关键词和嵌套子查询语句的语句类型对嵌套子查询语句进行语句拆分,确定嵌套子查询语句的关键表;
将租户身份信息作为查询条件添加到嵌套子查询语句的关键表中。
在一些实施例中,方法还包括:
若嵌套子查询语句进行语句拆分后仍有子查询语句,则对子查询语句继续进行语句拆分,直至子查询语句进行语句拆分后没有子查询语句为止。
在一些实施例中,关键词包括第一关键词,方法还包括:
识别第一数据库语句中的第一关键词;
若第一关键词满足第一条件,则确定第一关键词对应一个嵌套子查询语句;
若第一关键词不满足第一条件,则第一关键词不对应嵌套子查询语句。
在一些实施例中,关键词包括第一关键词、第二关键词、第三关键词,语句类型包括查询语句、更新语句、删除语句,根据关键词确定第一数据库语句的语句类型,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市讯方技术股份有限公司,未经深圳市讯方技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111639196.5/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置