一种基于代理隔离装置的内外网对接系统及方法与流程

文档序号:29123671发布日期:2022-03-04 23:09阅读:491来源:国知局
一种基于代理隔离装置的内外网对接系统及方法与流程

1.本发明属于电力物联网数据安全领域,具体涉及一种基于代理隔离装置的内外网对接系统及方法。


背景技术:

2.目前电力体系内部业务系统的应用均是采用内网数据交互模式,外部第三方单位系统无法直接通过互联网(公网)进入供电公司内部网络,现有的解决方案是人工导入数据方式,但人工导入方式,耗时耗力,数据更新周期频率也无法保证。
3.电力体系内部业务系统一般划分为信息内网和信息外网两个网络安全区域,在两个安全区域中分别部署安全等级不同的应用,满足安全等级不同的业务需求;两个安全区域之间采用符合安全规范的信息安全网络隔离装置进行硬件隔离,通过隔离装置硬件设备进行实际的数据库访问,从而在保证两个网络安全区域信息安全的同时,为网络信息安全区域的数据交互提供了可能性。网络隔离装置作为一种基于安全防护理念的网络安全技术,是通过物理隔离的方式,确保把有害的攻击隔离,在网络数据交换和保证网络内部信息不外泄的前提下,完成网间数据安全交换。信息内外网应用数据交互的应用场景通常是:信息外网应用完成数据处理之后,将需要发送给信息内网应用的数据组成sql语句,通过信息安全网络隔离装置写入信息内网的mysql数据库,信息内网应用从数据库中读取数据,从而完成信息内外网的数据交互。如果外网应用服务器被攻击和控制,则整个数据库数据可以被修改和窃取,且增加内网被攻击的风险;内外网应用服务器直接访问数据库接口,由于无法保证消息持久,只能通过同步通信的方式完成数据传输,内外网数据交互效率较低。
4.因此,缺乏一种方法既能保证信息可靠传输;又能提升内外网信息传输效率。


技术实现要素:

5.本发明所要解决的技术问题是如何提高电力系统内外网信息的信息传输效率,本发明的目的在于提供一种基于代理隔离装置的内外网对接系统及方法,通过加入消息中间层作为消息持久层,保证信息可靠传输;其次,在电力内网中设置专用的数据库服务器作为穿透数据库,只暂存交互数据,内外网应用服务器只和消息中间层进行通讯,不再直接访问内网数据库,实现了与代理隔离装置的解耦,大幅提升内外网信息传输效率。
6.本发明通过下述技术方案实现:
7.一方面,本发明提供一种基于代理隔离装置的内外网对接系统,包括内网应用服务器、代理隔离装置、外网应用服务器、数据库服务器和消息中间层,其中,
8.所述代理隔离装置用于根据指定的周期传输外网应用服务器的访问请求并根据安全规则完成访问请求的安全检测,还用于接收应答信息;
9.数据库服务器用于调用对应的数据库暂存完成安全检测的访问请求和应答信息;
10.消息中间层通过调用数据库服务器中的完成安全检测的访问请求并对其进行解析认证,并将解析认证通过后的访问请求传输给内网应用服务器,还用于将内网应用服务
器返回的应答信息传输给数据库服务器。
11.若外网应用服务器通过sql语句直接对内网数据库进行增删查改操作,如果外网应用服务器被攻击和控制,则整个数据库数据可以被修改和窃取;对多个数据库进行查询时,需要连接多个代理进程,进行多次查询,内外网数据交互效率低;若外网应用服务器通过强隔离驱动jdbc方式将查询数据信息写入内网数据库,内网应用服务器通过正常的驱动jdbc方式访问数据库,取到查询参数后返回调用内网业务系统,取到内网数据并将查询结果写回到数据库结果表中,如果外网应用服务器被攻击和控制,内网和外网应用仍然可以交互信息,增加内网被攻击的风险;内外网应用服务器直接访问数据库接口,由于无法保证消息持久,只能通过同步通信的方式完成数据传输,内外网数据交互效率较低。因此,本发明通过在内外网传输过程中加入消息中间层作为消息持久,保证信息可靠传输;其次,在电力内网中设置专用的数据库服务器作为穿透数据库,只暂存交互数据,解除内网数据库与具体业务的强相关性。这样一来,内外网应用服务器只和消息中间层进行通讯,不再直接访问内网数据库,实现了与代理隔离装置的解耦,大幅提升内外网信息传输效率。
12.进一步地,所述代理隔离装置包括sql代理隔离装置和jdbc驱动,其中,
13.所述jdbc驱动根据其内置的驱动程序实现sql代理隔离装置与外网应用服务器的安全交互,并且对外网应用服务器发出的sql请求进行初步安全检查;
14.所述sql代理隔离装置用于接收经过初步安全检查后的sql请求;并根据安全规则对接收的sql请求进行安全检测,还用于将访问应答结果集序列化通过jdbc驱动传输给外网应用服务器。
15.进一步地,所述sql代理隔离装置包括内网处理单元、外网处理单元和隔离交换单元,其中,
16.所述内网处理单元用于从数据库服务器中获取应答信息,并对应答信息进行协议分析后传输给隔离交换单元;
17.所述外网处理单元用于对经过初步安全检查后的sql请求进行分析,并传输给隔离交换单元;
18.所述隔离交换单元在内网处理单元、外网处理单元间建立安全数据通道并按照指定的周期在内、外网处理单元间进行访问请求的摆渡,并根据安全规则完成访问请求信息的安全检测。
19.第二方面,本方面提供一种基于代理隔离装置的内外网对接方法,包括以下步骤:
20.通过代理隔离装置在指定的周期内不断接收外网应用服务器的访问请求,并根据安全规则完成访问请求的安全检测;
21.将完成安全检测的访问请求存入数据库服务器指定的数据库中并按指定的周期更新数据库服务器;
22.调用数据库中完成安全检测的访问请求并对其进行解析认证;
23.将内网应用服务器对解析认证通过后的访问请求的应答信息存入数据库服务器中指定的数据库中;
24.通过代理隔离装置将数据库中的应答信息写入对应的访问请求中并返回给外网应用服务器。
25.进一步地,访问请求在内网应用服务器和外网服务器之间传输时采用队列序列化
的顺序传输。
26.进一步地,对访问请求进行安全检测的过程为:
27.对访问请求进行初步安全检查:对访问请求进行身份认证,所述身份认证的条件包括加密协商、版本协商和连接认证,当同时满足身份认证的所有条件时,身份认证通过;
28.对通过身份认证的访问请求进行数据认证,所述数据认证包括验证所述访问请求是否为sql请求且检查访问请求中是否携带数据库服务器的登录信息,若同时满足条件则所述访问请求通过数据认证,
29.对通过数据认证的访问请求采用安全规则进行安全检测。
30.进一步地,安全检测并更新数据库服务器的具体过程包括:
31.根据安全规则对访问请求的特殊字符进行验证、请求ip进行过滤、请求地址过滤、身份令牌验证;
32.将符合安全规则的访问请求的状态设置为待访问并对其进行编号,将编号后的访问请求放入访问请求队列中,并按顺序存入数据库服务器指定的数据库中;
33.根据访问请求获取对应的内网应用服务器返回的应答信息,将应答信息写入该访问请求的返回参数字段,同时将该访问请求的状态设置为已完成,将状态为已完成的访问请求存入系统日志中;
34.数据库服务器按所述指定的周期更新数据库中的访问请求。
35.进一步地,解析认证过程包括利用访问请求中携带的数据库服务器的登录信息进行登录验证。
36.进一步地,将符合安全规则的访问请求中的请求地址、请求参数、请求header、请求时间、请求类型、请求ip、请求状态,通过代理隔离装置映射到数据库服务器指定的数据库中。
37.进一步地,当访问状态为不符合安全规则时,则将验证未通过的字段和异常状态存到对应的访问请求中的返回参数字段中;
38.当在指定的周期内未接收到对应访问请求的应答信息,则等待超时,将超时信息和超时状态存到对应的访问请求中的返回参数字段中。
39.本发明与现有技术相比,具有如下的优点和有益效果:
40.本发明通过在内网和外网的网络边界部署代理隔离装置,在与代理隔离装置进行信息传输时,加入消息中间层作为消息持久,保证信息可靠传输;其次,在电力内网中设置专用的数据库服务器作为穿透数据库,只暂存交互数据,这样一来,仅允许内外网间通过sql请求的通信方式下进行交互,并切断内网主机与互联网之间的任何连接,保证业务访问的可靠性和安全性,实现内外网的安全防护,内外网应用服务器只和消息中间层进行通讯,不再直接访问内网数据库,实现了与代理隔离装置的解耦,提升内外网信息传输效率。
附图说明
41.为了更清楚地说明本发明示例性实施方式的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。在附图中:
42.图1为本发明实施例中基于代理隔离装置的内外网对接系统结构框图;
43.图2为本发明实施例中代理隔离装置的结构示意图;
44.图3为本发明实施例中基于代理隔离装置的内外网对接方法示意图;
45.图4为本发明实施例对接方法的访问请求及响应过程。
具体实施方式
46.为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
47.实施例1
48.如图1所示,本实施例1提供一种基于代理隔离装置的内外网对接系统,包括内网应用服务器、代理隔离装置、外网应用服务器、数据库服务器和消息中间层,其中,
49.所述代理隔离装置用于根据指定的周期传输外网应用服务器的访问请求并根据安全规则完成访问请求的安全检测,还用于接收应答信息;
50.数据库服务器用于调用对应的数据库暂存完成安全检测的访问请求和应答信息;
51.消息中间层通过调用数据库服务器中的完成安全检测的访问请求并对其进行解析认证,并将解析认证通过后的访问请求传输给内网应用服务器,还用于将内网应用服务器返回的应答信息传输给数据库服务器。
52.通过在内外网交互处安装代理隔离装置,阻断除sql数据交互以外的信号,互联网端(外网)向内网发送访问请求,通过代理隔离设备向内网内单向传输,然后在内网中通过mqtt协议分发到发送请求的客户端。
53.具体地,如图2所示,所述代理隔离装置包括sql代理隔离装置和jdbc驱动,其中,
54.所述jdbc驱动根据其内置的驱动程序实现sql代理隔离装置与外网应用服务器的安全交互,并且对外网应用服务器发出的sql请求进行初步安全检查;jdbc驱动是整个代理隔离装置的用户接口,部署在外网应用服务器端,是sql代理隔离装置面向外网应用服务器的唯一编程接口,是一套信息系统应用服务器与数据库之间的安全交互协议;
55.所述sql代理隔离装置用于接收经过初步安全检查后的sql请求;并根据安全规则对接收的sql请求进行安全检测,还用于将访问应答结果集序列化通过jdbc驱动传输给外网应用服务器。
56.sql代理隔离装置包括内网处理单元、外网处理单元和隔离交换单元,其中,
57.所述内网处理单元用于从数据库服务器中获取应答信息,并对应答信息进行协议分析后传输给隔离交换单元;
58.所述外网处理单元用于对经过初步安全检查后的sql请求进行分析,并传输给隔离交换单元;
59.所述隔离交换单元在内网处理单元、外网处理单元间建立安全数据通道并按照指定的周期在内、外网处理单元间进行访问请求的摆渡,并根据安全规则完成访问请求信息的安全检测。
60.sql代理隔离装置是在双网隔离条件下提供外网业务系统访问内网数据库功能的专用安全装置,常用于电力信息内外网边界,内网处理单元与内网相连,外网处理单元与外
网相连,是一种基于协议隔离的网络安全隔离装置,通过提供兼容jdbc3.0标准的sg-jdbc驱动程序,基于专门设计的私有加密通信协议在内外网之间构建一个安全通道,实现数据库代理访问。通过外网处理单元接收外网应用服务器访问数据库的sql请求,根据设定的规则做必要的安全检查和sql语句重建,然后经过内网处理单元将访问请求发送至内网数据库服务器中,最后将访问应答结果发送至外网应用服务器中。此时,sql代理隔离装置相对于外网应用服务器而言,就是数据库服务器,外网应用服务器需要使用jdbc驱动与sql代理隔离装置进行通信。
61.实施例2
62.基于实施例1中的方法,如图3所示,本实施例2提供一种基于代理隔离装置的内外网对接方法,包括以下步骤:
63.s1、通过代理隔离装置在指定的周期内不断接收外网应用服务器的访问请求,并根据安全规则完成访问请求的安全检测;
64.具体地,如图3所示,对访问请求进行安全检测的过程为:
65.s11、对访问请求进行初步安全检查:对访问请求进行身份认证,所述身份认证的条件包括加密协商、版本协商和连接认证,当同时满足身份认证的所有条件时,身份认证通过;
66.s12、对通过身份认证的访问请求进行数据认证,所述数据认证包括验证所述访问请求是否为sql请求且检查访问请求中是否携带数据库服务器的登录信息,若同时满足条件则所述访问请求通过数据认证,
67.s13、对通过数据认证的访问请求采用安全规则进行安全检测。
68.s2、将完成安全检测的访问请求存入数据库服务器指定的数据库中并按指定的周期更新数据库服务器;
69.安全检测并更新数据库服务器的具体过程包括:
70.s21、根据安全规则对访问请求的特殊字符进行验证、请求ip进行过滤、请求地址过滤、身份令牌验证;
71.s22、将符合安全规则的访问请求的状态设置为待访问并对其进行编号,将编号后的访问请求放入访问请求队列中,并按顺序存入数据库服务器指定的数据库中;安全规则包括:根据配置的白名单、黑名单、请求ip地址、特殊字符、身份令牌的关键字的值,对访问请求进行校验;
72.并将符合安全规则的该访问请求中的请求地址、请求参数、请求header、请求时间、请求类型、请求ip、请求状态,通过代理隔离装置映射到数据库服务器指定的数据库中;
73.s23、根据访问请求获取对应的内网应用服务器返回的应答信息,将应答信息写入该访问请求的返回参数字段,同时将该访问请求的状态设置为已完成,将状态为已完成的访问请求存入系统日志中;
74.s24、数据库服务器按所述指定的周期更新数据库中的访问请求。
75.s3、调用数据库中完成安全检测的访问请求并对其进行解析认证;
76.具体地,解析认证过程包括利用访问请求中携带的数据库服务器的登录信息进行登录验证。
77.s4、将内网应用服务器对解析认证通过后的访问请求的应答信息存入数据库服务
器中指定的数据库中;
78.s5、通过代理隔离装置将数据库中的应答信息写入对应的访问请求中并返回给外网应用服务器。
79.具体地,当上述过程中,访问状态为不符合安全规则时,则将验证未通过的字段和异常状态存到对应的访问请求中的返回参数字段中;
80.或在指定的周期内未接收到对应访问请求的应答信息,则等待超时,将超时信息和超时状态存到对应的访问请求中的返回参数字段中。
81.具体地,访问请求在内网应用服务器和外网服务器之间传输时采用队列序列化的顺序传输,如图4所示,此时的访问请求过程为:
82.外网应用服务器将访问请求按顺序放入外网队列中,并将外网队列中的访问请求按顺序通过代理隔离装置,通过代理隔离装置依次对访问请求进行安全检测,将通过安全检测的访问请求的状态设置为待访问并对其进行编号,将编号后的访问请求放入访问请求队列中,并依次存入数据库服务器指定的数据库中,从数据库中依次读取访问请求放入内网队列中,内网应用服务器从内网队列中读取访问请求,内网应用服务器根据对应的访问请求进行响应,返回应答信息,将访问请求对应的应答信息放入内网队列中,将内网队列中的应答信息依次存入数据库中,并将应答信息写入对应的访问请求中的返回参数字段,通过代理隔离装置将访问请求放入外网队列中,依次返回给外网应用服务器中。
83.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。
84.本技术是参照根据本技术实施例的方法、设备、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
85.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
86.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
87.本领域普通技术人员可以理解实现上述事实和方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,涉及的程序或者所述的程序可以存储于一计算机所可读取存储介质中,该程序在执行时,包括如下步骤:此时引出相应的方法步骤,所述的存储介质可以是rom/ram、磁碟、光盘等等。
88.以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1