System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据安全访问领域,尤其涉及一种数据安全引擎、数据安全访问系统和访问方法。
技术介绍
1、目前的数据安全实现方式存在一定的局限性,主要体现在对加密规则的依赖上。由于加密规则被硬编码到程序中,每当需要对加密规则进行调整或变更时,都必须进行程序代码的更新、重新编码以及发布程序的操作。这种方式不仅繁琐耗时,还容易引入错误,增加了维护成本和风险。特别是在安全性要求较高的场景下,频繁的程序发布可能会带来系统不稳定性和安全风险。
2、此外,当前的实现方式也无法快速响应客户的需求变化。客户对于数据安全性的需求可能会随时变化,而当前的实现方式无法灵活应对这些变化。这种情况下,产品开发周期较长,无法及时满足客户的需求。
技术实现思路
1、有鉴于此,本专利技术实施例的目的在于提供一种数据安全引擎、数据安全访问系统和访问方法,使得用户无需变更程序重新发布版本,可以快速响应客户的需求变化。
2、为达到上述目的,第一方面,本专利技术提供一种数据安全引擎,所述数据安全引擎包括:
3、配置中心,用于配置待插入数据的加密规则、配置待读取数据的解密规则以及配置待脱敏数据的脱敏规则;
4、数据加密套件,用于解析jdbc驱动发送的插入数据请求,从所述插入数据请求中获取待插入数据在数据库中的坐标,根据所述待插入数据在数据库中的坐标从所述配置中心获取对应的加密规则,按照所述加密规则对所述待插入数据加密;
5、数据解密套件,用于解析所述jdbc驱动发送的
6、脱敏组件,用于根据待脱敏数据在数据库中的坐标从所述配置中心获取对应的脱敏规则,对待脱敏数据进行脱敏并通过所述jdbc驱动输出至java应用程序。
7、在一些可能的实施方式中,所述的配置待插入数据的加密规则、配置待读取数据的解密规则以及配置待脱敏数据的脱敏规则,具体包括:
8、获取所述待插入数据的坐标,按照所述待插入数据的坐标设置所述待插入数据的加密规则;
9、获取所述待读取数据的坐标,按照所述待读取数据的坐标配置所述待读取数据的解密规则;
10、获取所述待脱敏数据的坐标,按照所述待脱敏数据的坐标配置所述待脱敏数据的脱敏规则。
11、在一些可能的实施方式中,所述脱敏规则的定义如下:
12、规则一:“_”单个下划线表示对待脱敏数据对应位置不做变更;
13、规则二:“*”星号表示对待脱敏数据对应位置进行脱敏转换,替换成星号;
14、规则三:“^“表示对待脱敏数据从左到右进行脱敏处理;
15、规则四:“$“表示对待脱敏数据从右到左进行脱敏处理;
16、规则五:“{*}“表示对待脱敏数据中的除了所述规则一和所述规则二中规则指定的位置外的所有数据进行脱敏转换,替换成星号;
17、规则六:“{_}“表示对待脱敏数据中的除了所述规则一和所述规则二中规则指定的位置外的所有数据保持不变。
18、在一些可能的实施方式中,所述待插入数据、所述待读取数据和所述待脱敏数据在数据库中的坐标均通过如下方式获取:
19、通过所述jdbc驱动的getcatalog()接口获取数据请求的目录;
20、通过所述jdbc驱动的getschema()接口获取数据请求的模式;
21、通过所述jdbc驱动的gettablename()接口获取数据请求的表名;
22、通过所述jdbc驱动的getcolumnname()接口获取数据请求的列名;
23、将获取目录、模式、表名和列名进行拼接,获得待插入数据、待读取数据和待脱敏数据在数据库中的坐标。
24、第二方面,本专利技术实施例还提供了一种数据库安全访问系统,所述安全访问系统包括第一方面任意一种所述的数据安全引擎和数据库;其中,
25、所述java应用程序内嵌入的jdbc驱动通过所述数据安全引擎向所述数据库发送数据访问请求,所述数据安全引擎对所述数据访问请求进行加密、解密和/或脱敏。
26、在一些可能的实施方式中,所述数据安全引擎具体用于:
27、当所述数据访问请求为插入数据请求时,所述数据安全引擎中的数据加密套件解析jdbc驱动发送的插入数据请求,从所述插入数据请求中获取待插入数据在数据库中的坐标,根据所述待插入数据在数据库中的坐标从所述数据安全引擎中的配置中心获取对应的加密规则,按照所述加密规则对所述待插入数据加密;
28、当所述数据访问请求为读取数据请求时,所述数据安全引擎中的数据解密套件解析所述jdbc驱动发送的读取数据请求,从所述读取数据请求中获取待读取数据在数据库中的坐标,根据所述待读取数据在数据库中的坐标从所述配置中心获取对应的解密规则,按照所述解密规则对所述读取数据进行解密;
29、当所述数据访问请求为数据脱敏请求时,所述数据安全引擎中的脱敏组件根据待脱敏数据在数据库中的坐标从所述配置中心获取对应的脱敏规则,对待脱敏数据进行脱敏并通过所述jdbc驱动输出至应用程序。
30、第三方面,本专利技术实施例还提供了一种数据库安全访问方法,该访问方法基于第一方面任意一项所述的数据安全引擎,所述安全访问方法包括:
31、java应用程序内嵌入的jdbc驱动通过数据安全引擎向所述数据库发送数据访问请求,所述数据安全引擎对所述数据访问请求进行加密、解密和/或脱敏配置。
32、在一些可能的实施方式中,所述数据安全引擎对所述数据访问请求进行加密、解密和/或脱敏配置,具体包括:
33、当所述数据访问请求为插入数据请求时,所述数据安全引擎中的数据加密套件解析jdbc驱动发送的插入数据请求,从所述插入数据请求中获取待插入数据在数据库中的坐标,根据所述待插入数据在数据库中的坐标从所述数据安全引擎中的配置中心获取对应的加密规则,按照所述加密规则对所述待插入数据加密;
34、当所述数据访问请求为读取数据请求时,所述数据安全引擎中的数据解密套件解析所述jdbc驱动发送的读取数据请求,从所述读取数据请求中获取待读取数据在数据库中的坐标,根据所述待读取数据在数据库中的坐标从所述配置中心获取对应的解密规则,按照所述解密规则对所述读取数据进行解密;
35、当所述数据访问请求为数据脱敏请求时,所述数据安全引擎中的脱敏组件根据待脱敏数据在数据库中的坐标从所述配置中心获取对应的脱敏规则,对待脱敏数据进行脱敏并通过所述jdbc驱动输出至应用程序。
36、第四方面,本专利技术实施例还提供了一种电子设备,包括:
37、一个或多个处理器;
38、存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所本文档来自技高网...
【技术保护点】
1.一种数据安全引擎,其特征在于,所述数据安全引擎包括:
2.根据权利要求1所述的数据安全引擎,其特征在于,所述的配置待插入数据的加密规则、配置待读取数据的解密规则以及配置待脱敏数据的脱敏规则,具体包括:
3.根据权利要求1所述的数据安全引擎,其特征在于,所述脱敏规则的定义如下:
4.根据权利要求1所述的数据安全引擎,其特征在于,所述待插入数据、所述待读取数据和所述待脱敏数据在数据库中的坐标均通过如下方式获取:
5.一种数据安全访问系统,其特征在于,所述安全访问系统包括权利要求1-4任意一项所述的数据安全引擎和数据库;其中,
6.根据权利要求5所述的数据安全访问系统,其特征在于,所述数据安全引擎具体用于:
7.一种数据安全访问方法,该方法基于权利要求1-4中任意一项所述的数据安全引擎,其特征在于,所述安全访问方法包括:
8.根据权利要求7所述的数据安全访问方法,其特征在于,所述数据安全引擎对所述数据访问请求进行加密、解密和/或脱敏,具体包括:
9.一种电子设备,其特征在于,包括:
>10.一种计算机可读介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求7或8所述的方法。
...【技术特征摘要】
1.一种数据安全引擎,其特征在于,所述数据安全引擎包括:
2.根据权利要求1所述的数据安全引擎,其特征在于,所述的配置待插入数据的加密规则、配置待读取数据的解密规则以及配置待脱敏数据的脱敏规则,具体包括:
3.根据权利要求1所述的数据安全引擎,其特征在于,所述脱敏规则的定义如下:
4.根据权利要求1所述的数据安全引擎,其特征在于,所述待插入数据、所述待读取数据和所述待脱敏数据在数据库中的坐标均通过如下方式获取:
5.一种数据安全访问系统,其特征在于,所述安全访问系统包括权利要求1-4任意一项所述的数据安全...
【专利技术属性】
技术研发人员:王建林,肖姝,贾永强,李永东,
申请(专利权)人:北京宇信科技集团股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。