本发明涉及计算机技术与数据处理,具体涉及一种基于数据库可动态配置的数据隔离存储方法和装置。
背景技术:
1、随着互联网的发展,分析系统需要对大量数据进行汇聚并根据不同的组织方式对数据进行治理,形成多维度数据集合以使得能够提供更加安全、有效和智能的分析结果,数据安全的重要性越来越高,对数据的隔离性要求也越来越严格,把数据细化到行业需求上,不同行业对数据安全的要求也有所差别,因此,需要不同的解决方案来实现数据的安全隔离存储。
2、一般情况下,对于数据的安全控制大多是基于对数据的分级分类以及业务上不同角色可以查看的数据范围进行考虑,通过对数据的分级分类并利用特定的标识对数据进行逻辑划分,将不同案事件的数据放在同一张表里,若发生sq l注入攻击将会影响表中所有的数据;经过排重合并后,数据某个字段的值来自于多个案件,会导致数据控制上的漏洞,以及难以根据案件判断出数据归属;除此之外,即使是在数据正常使用的过程中也会对用户造成一定程度的困扰,用户虽然可以通过增加标示字段来区分原始数据,但依旧存在业务控制上的漏洞,数据查询得到的结果也容易过多或过少。
3、因此,为了避免业务控制上的漏洞所造成的影响以及数据归属的不清晰的问题,本发明提出了一种基于数据库可动态配置的数据隔离存储方法和装置。
技术实现思路
1、本发明针对上述现有技术中一个或多个技术缺陷,提出了如下技术方案。
2、一种基于数据库可动态配置的数据隔离存储方法,包括:
3、s1:系统将用户基于系统可达的最大分库数选择的可支持动态建库或动态schema的数据库作为数据隔离存储的数据库,再根据数据库命名规范制定数据库名的命名规则和数据库隔离方式组装规则以使得对所述数据库的数据隔离配置进行自定义,再通过md5方式生成分库键绑定数据库名并将所述分库键和所述数据隔离配置存储到配置管理服务中;
4、s2:系统为用户输入的新数据添加分库键并根据所述分库键确定所述新数据存储的数据库;
5、s3:在所述新数据治理入库时,系统根据所述新数据的分库键获取所述配置管理服务中相应的数据隔离配置,以及根据所述新数据的分库键获取所述新数据存储的数据库,再动态连接相应的数据库并按照所述数据隔离配置将所述新数据隔离存储到所述相应的数据库中;
6、s4:系统获取所述数据隔离配置和所述数据库中隔离存储的数据以进行显示。
7、更进一步地,在添加分库键时若添加规则为数据库中数据源的已有属性则直接生成分库键。
8、更进一步地,步骤s3还包括读取数据源配置实现动态数据源以使得对数据库的连接进行统一管理。
9、更进一步地,当用户查找隔离存储的数据时,系统先获取所述配置管理服务中的数据隔离配置并在网页http请求头中添加所述分库键的参数,后台拦截器根据所述分库键获取所述配置管理服务中的相应数据库名,再通过切面对所有需要查询的相应数据库进行统一处理。
10、更进一步地,在所述系统可达的最大分库数过大时通过多集群方式进行扩展。
11、更进一步地,所述数据库隔离方式包括一案一库、一类案一库、一人一库和一串并案一库。
12、基于本发明的第二方面,还提出了一种基于数据库可动态配置的数据隔离存储装置,包括:
13、隔离配置单元:系统将用户基于系统可达的最大分库数选择的可支持动态建库或动态schema的数据库作为数据隔离存储的数据库,再根据数据库命名规范制定数据库名的命名规则和数据库隔离方式组装规则以使得对所述数据库的数据隔离配置进行自定义,再通过md5方式生成分库键绑定数据库名并将所述分库键和所述数据隔离配置存储到配置管理服务中;
14、添加分库键单元:系统为用户输入的新数据添加分库键并根据所述分库键确定所述新数据存储的数据库;
15、治理入库单元:在所述新数据治理入库时,系统根据所述新数据的分库键获取所述配置管理服务中相应的数据隔离配置,以及根据所述新数据的分库键获取所述新数据存储的数据库,再动态连接相应的数据库并按照所述数据隔离配置将所述新数据隔离存储到所述相应的数据库中;
16、显示单元:系统获取所述数据隔离配置和所述数据库中隔离存储的数据以进行显示。
17、基于本发明的第三方面,还提出了一种计算机可存储介质,其上存储一个或多个计算机程序,在所述计算机程序被计算机处理器执行时实施如上述任一项之所述的方法。
18、本发明的技术效果在于:本发明通过分析实际业务需求对数据服务层和业务层进行逻辑隔离控制,并在存储层对数据进行物理隔离存储,实现了存储层面的数据隔离,不仅能灵活配置数据隔离存储的方式,而且极大提高了数据隔离存储的安全性,在覆盖多种类型数据存储的同时支持多种维度的数据隔离控制,可以避免数据的归属不清晰以及业务控制漏洞和排重问题导致的数据泄露,提高了程序的安全性。
1.一种基于数据库可动态配置的数据隔离存储方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,在添加分库键时若添加规则为数据库中数据源的已有属性则直接生成分库键。
3.根据权利要求1所述的方法,其特征在于,步骤s3还包括读取数据源配置实现动态数据源以使得对数据库的连接进行统一管理。
4.根据权利要求1所述的方法,其特征在于,当用户查找隔离存储的数据时,系统先获取所述配置管理服务中的数据隔离配置并在网页http请求头中添加所述分库键的参数,后台拦截器根据所述分库键获取所述配置管理服务中的相应数据库名,再通过切面对所有需要查询的相应数据库进行统一处理。
5.根据权利要求1所述的方法,其特征在于,在所述系统可达的最大分库数过大时通过多集群方式进行扩展。
6.根据权利要求1所述的方法,其特征在于,所述数据库隔离方式包括一案一库、一类案一库、一人一库和一串并案一库。
7.一种基于数据库可动态配置的数据隔离存储装置,其特征在于,包括:
8.一种计算机可存储介质,其上存储一个或多个计算机程序,其特征在于,在所述计算机程序被计算机处理器执行时实施如权利要求1-6任一项之所述的方法。
