一种基于spring cloud gateway的报文脱敏方法、系统及存储介质
技术领域
1.本发明涉及服务网关数据处理领域,涉及一种报文脱敏技术,尤其涉及一种基于spring cloud gateway的报文脱敏方法、系统及存储介质。
背景技术:2.spring cloud框架能够将单一系统架构转为分布式的微服务架构,原有笨重的单体系统被按照业务领域或服务方向拆分为多个微服务,每个微服务只负责特定业务领域,对外提供访问接口。经过拆分后的微服务一般较多,无论从安全角度还是服务管理角度,需要有一个网关的提供一个统一的外部访问入口。spring cloud gateway作为spring cloud体系中的成员,正好为微服务架构提供了高效的服务访问入口和路由管理模式。
3.目前的某些实际业务场景中,客户端的写入和读取中会包含一些敏感数据,如手机号、身份证号、银行卡号等,为保障信息安全,需要在存取相关信息时进行脱敏处理。在微服务架构下,每个微服务的接口设计是不同的,需要脱敏的字段名称也是不同的,针对不同的操作角色是否脱敏也会有差异化要求。由此,在微服务体系下会出现脱敏过程、标准和规则不统一的问题,每个需要脱敏的微服务要额外引入角色和权限甚至根据接口设计进行额外的脱敏处理,实现过程较混乱。业界亟需提出一种能够基于spring cloud gateway进行统一处理、统一配置的脱敏方案。
技术实现要素:4.本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种基于spring cloud gateway的报文脱敏方法、系统及存储介质,能够基于spring cloud gateway对相关报文进行统一处理、统一配置,实现高效有序脱敏。
5.本发明解决技术问题所采用的技术方案如下:
6.一种基于spring cloud gateway的报文脱敏方法,包括以下步骤:
7.s1.通过spring cloud gateway接收客户端所发送的请求;
8.s2.识别接收到的请求,判断是否需要对报文进行脱敏处理;若是则执行下一步,若否则结束流程;
9.s3.根据预先存储的脱敏配置对报文进行脱敏,得到脱敏后的报文。
10.与现有技术相比,本技术方案的有益效果是:在通过spring cloud gateway接收请求后,通过识别接收到的请求判断是否需要对报文进行脱敏处理,并根据预先存储的脱敏配置对报文进行脱敏,通过统一处理统一配置,实现高效有序脱敏。
11.进一步地,在步骤s2中,识别接收到的请求具体包括:获取客户端登录信息、请求地址和报文体;判断是否需要进行脱敏处理具体包括:根据预先存储的脱敏配置判断是否需要对报文进行脱敏处理;
12.步骤s2具体为:获取客户端登录信息、请求地址和报文体,结合客户端登录信息、
请求地址和报文体,根据预先存储的脱敏配置判断是否需要对报文进行脱敏处理;若是则执行下一步,若否则结束流程。
13.采用上述方案的有益效果是:通过请求中所记录的客户端登录信息、请求地址和报文体等信息,结合预先存储的脱敏配置进行判断,满足差异化要求。
14.进一步地,在步骤s2中,若判断需要对报文进行脱敏处理时,则进一步根据客户端登录信息、请求地址和报文体,判断需要脱敏的报文类型,所述报文类型包括请求数据报文和响应数据报文。
15.采用上述方案的有益效果是:根据客户端登录信息、请求地址和报文体判断需要脱敏的报文类型为请求数据报文或者响应数据报文,方便报文的存入或者输出。
16.进一步地,当需要脱敏的报文类型为请求数据报文时,本方法具体包括:
17.通过spring cloud gateway接收客户端所发送的请求;
18.获取客户端登录信息、请求地址和报文体;
19.根据预先存储的脱敏配置对请求数据报文进行重构,并将重构后的请求数据报文存入spring cloud gateway后的微服务端。
20.采用上述方案的有益效果是:能够根据请求中的客户端登录信息、请求地址和报文体等信息进行对存入的报文脱敏,将重构后的请求数据报文存入spring cloud gateway后的微服务端。
21.进一步地,当需要脱敏的报文类型为响应数据报文时,本方法具体包括:
22.通过spring cloud gateway接收客户端所发送的请求;
23.获取客户端登录信息、请求地址和报文体;
24.根据预先存储的脱敏配置对响应数据报文进行重构,并将重构后的响应数据报文返回向spring cloud gateway发送请求的客户端。
25.采用上述方案的有益效果是:能够根据请求中的客户端登录信息、请求地址和报文体等信息对输出的报文进行脱敏,将重构后的响应数据报文返回向spring cloud gateway发送请求的客户端。
26.一种基于spring cloud gateway的报文脱敏系统,包括:
27.请求接收模块,用于通过spring cloud gateway接收客户端所发送的请求;
28.请求识别模块,用于识别接收到的请求并判断是否需要对报文进行脱敏处理;若是则执行下一步,若否则结束流程;
29.脱敏执行模块,用于根据预先存储的脱敏配置对报文进行脱敏,得到脱敏后的报文。
30.与现有技术相比,本技术方案的有益效果是:在通过spring cloud gateway接收请求后,通过识别接收到的请求判断是否需要对报文进行脱敏处理,并根据预先存储的脱敏配置对报文进行脱敏,通过统一处理统一配置,实现高效有序脱敏。
31.进一步地,在请求识别模块中,识别接收到的请求具体包括:获取客户端登录信息、请求地址和报文体;判断是否需要进行脱敏处理具体包括:根据预先存储的脱敏配置判断是否需要对报文进行脱敏处理;
32.请求识别模块具体用于:获取客户端登录信息、请求地址和报文体,结合客户端登录信息、请求地址和报文体,根据预先存储的脱敏配置判断是否需要对报文进行脱敏处理;
若是则执行下一步,若否则结束流程。
33.采用上述方案的有益效果是:通过请求中所记录的客户端登录信息、请求地址和报文体等信息,结合预先存储的脱敏配置进行判断,满足差异化要求。
34.进一步地,当请求识别模块判断需要对报文进行脱敏处理时,则进一步根据客户端登录信息、请求地址和报文体,判断需要脱敏的报文类型,所述报文类型包括请求数据报文和响应数据报文。
35.采用上述方案的有益效果是:根据客户端登录信息、请求地址和报文体判断需要脱敏的报文类型为请求数据报文或者响应数据报文,方便报文的存入或者输出。
36.进一步地,当请求识别模块判断需要脱敏的报文类型为请求数据报文时:
37.所述请求接收模块用于通过spring cloud gateway接收客户端所发送的请求;
38.所述请求识别模块用于获取客户端登录信息、请求地址和报文体;
39.所述脱敏执行模块用于根据预先存储的脱敏配置对请求数据报文进行重构,并将重构后的请求数据报文存入spring cloud gateway后的微服务端;
40.当请求识别模块判断需要脱敏的报文类型为响应数据报文时:
41.所述请求接收模块用于通过spring cloud gateway接收客户端所发送的请求;
42.所述请求识别模块用于获取客户端登录信息、请求地址和报文体;
43.所述脱敏执行模块用于根据预先存储的脱敏配置对响应数据报文进行重构,并将重构后的响应数据报文返回向spring cloud gateway发送请求的客户端。
44.采用上述方案的有益效果是:能够根据请求中的客户端登录信息、请求地址和报文体等信息进行对存入或者输出的报文脱敏,将重构后的请求数据报文存入spring cloud gateway后的微服务端,或者将重构后的响应数据报文返回向spring cloud gateway发送请求的客户端。
45.一种存储介质,所述存储介质包含计算机可执行指令,所述计算机可执行指令在由计算机处理器执行时用于执行上述任一所述的基于spring cloud gateway的报文脱敏方法。
附图说明
46.图1是本发明基于spring cloud gateway的报文脱敏方法的流程图。
47.图2是本发明基于spring cloud gateway的报文脱敏系统的模块示意图。
48.图3是本发明基于spring cloud gateway的报文脱敏系统的架构图。
49.图中,各标号所代表的部件列表如下:
50.请求接收模块1、请求识别模块2、脱敏执行模块3、spring cloud gateway4、客户端5、微服务器6。
具体实施方式
51.为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
52.在本发明的描述中,需要理解的是,术语中“中心”、“上”、“下”、“前”、“后”、“左”、“右”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或组件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
53.在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“连接”、“相连”应做广义理解,例如,可以是固定连接,也可以是拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以是通过中间媒介间接相连,可以是两个组件内部的连通。当组件被称为“固定于”或“设置于”另一个元件,它可以直接在另一个组件上或者也可以存在居中的组件。当一个组件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明的具体含义。
54.spring cloud框架能够将单一系统架构转为分布式的微服务架构,原有笨重的单体系统被按照业务领域或服务方向拆分为多个微服务,每个微服务只负责特定业务领域,对外提供访问接口。经过拆分后的微服务一般较多,无论从安全角度还是服务管理角度,需要有一个网关的提供一个统一的外部访问入口。spring cloud gateway作为spring cloud体系中的成员,正好为微服务架构提供了高效的服务访问入口和路由管理模式。
55.目前的某些实际业务场景中,客户端的写入和读取中会包含一些敏感数据,如手机号、身份证号、银行卡号等,为保障信息安全,需要在存取相关信息时进行脱敏处理。在微服务架构下,每个微服务的接口设计是不同的,需要脱敏的字段名称也是不同的,针对不同的操作角色是否脱敏也会有差异化要求。由此,在微服务体系下会出现脱敏过程、标准和规则不统一的问题,每个需要脱敏的微服务要额外引入角色和权限甚至根据接口设计进行额外的脱敏处理,实现过程较混乱。业界亟需提出一种能够基于spring cloud gateway进行统一处理、统一配置的脱敏方案。
56.为了提出一种新的解决方案,便于基于spring cloud gateway对相关报文进行统一处理、统一配置,实现高效有序脱敏,本发明提供一种基于spring cloud gateway的报文脱敏方法、系统及存储介质。
57.如图1所示,一种基于spring cloud gateway的报文脱敏方法,包括以下步骤:
58.s1.通过spring cloud gateway接收客户端所发送的请求。当客户端发出请求时,系统通过spring cloud gateway接收该请求。
59.s2.识别接收到的请求,判断是否需要对报文进行脱敏处理;若是则执行下一步,若否则结束流程。客户端发出的请求包含具体数据,系统识别出这些数据后,进一步判断是否需要对报文进行脱敏处理。若需要对报文进行脱敏,则继续执行步骤s3,否则直接存入报文或者输出报文。不同的客户端,不同的请求,会对应不同的安全权限。有的需要进行脱敏,有的则不用,本技术方案通过步骤s3实现统一区分处理。
60.s3.根据预先存储的脱敏配置对报文进行脱敏,得到脱敏后的报文。系统内预先存储有脱敏配置,脱敏配置明确了不同请求所对应的脱敏方式和脱敏逻辑等方面,只需要根据请求,结合脱敏配置进行分析,即可确定对应的脱敏方式和脱敏逻辑,基于此即可对报文进行脱敏,得到脱敏后的报文。
61.基于上述技术方案,在通过spring cloud gateway接收请求后,通过识别接收到
的请求判断是否需要对报文进行脱敏处理,并根据预先存储的脱敏配置对报文进行脱敏,通过统一处理统一配置,实现高效有序脱敏。
62.优选地,在步骤s2中,识别接收到的请求具体包括:获取客户端登录信息、请求地址和报文体;判断是否需要进行脱敏处理具体包括:根据预先存储的脱敏配置判断是否需要对报文进行脱敏处理。对应地,步骤s2具体为:获取客户端登录信息、请求地址和报文体,结合客户端登录信息、请求地址和报文体,根据预先存储的脱敏配置判断是否需要对报文进行脱敏处理;若是则执行下一步,若否则结束流程。
63.基于上述技术方案,通过请求中所记录的客户端登录信息、请求地址和报文体等信息,结合预先存储的脱敏配置进行判断,满足差异化要求。
64.优选地,在步骤s2中,若判断需要对报文进行脱敏处理时,则进一步根据客户端登录信息、请求地址和报文体,判断需要脱敏的报文类型,所述报文类型包括请求数据报文和响应数据报文。
65.结合图3,在由spring cloud gateway4组成的网络中,请求数据报文对应从客户端5存入微服务器6中的报文,而响应数据报文则对应从微服务器6输出客户端5的报文。本系统通过spring cloud gateway4进行信息交互,根据客户端登录信息、请求地址和报文体判断需要脱敏的报文类型,方便报文的存入或者输出。
66.具体地,一种基于spring cloud gateway的报文脱敏方法,当需要脱敏的报文类型为请求数据报文时,本方法具体包括:
67.通过spring cloud gateway接收客户端所发送的请求;
68.获取客户端登录信息、请求地址和报文体;
69.根据预先存储的脱敏配置对请求数据报文进行重构,并将重构后的请求数据报文存入spring cloud gateway后的微服务端。
70.基于上述方案,能够根据请求中的客户端登录信息、请求地址和报文体等信息进行对存入的报文脱敏,将重构后的请求数据报文存入spring cloud gateway后的微服务端。
71.具体地,一种基于spring cloud gateway的报文脱敏方法,当需要脱敏的报文类型为响应数据报文时,本方法具体包括:
72.通过spring cloud gateway接收客户端所发送的请求;
73.获取客户端登录信息、请求地址和报文体;
74.根据预先存储的脱敏配置对响应数据报文进行重构,并将重构后的响应数据报文返回向spring cloud gateway发送请求的客户端。
75.基于上述方案,能够根据请求中的客户端登录信息、请求地址和报文体等信息对输出的报文进行脱敏,将重构后的响应数据报文返回向spring cloud gateway发送请求的客户端。
76.如图2所示,对应地,一种基于spring cloud gateway的报文脱敏系统,包括请求接收模块、请求识别模块和脱敏执行模块。
77.所述请求接收模块用于通过spring cloud gateway接收客户端所发送的请求;所述请求识别模块用于识别接收到的请求并判断是否需要对报文进行脱敏处理;若是则执行下一步,若否则结束流程;所述脱敏执行模块用于根据预先存储的脱敏配置对报文进行脱
敏,得到脱敏后的报文。
78.优选地,在请求识别模块中,识别接收到的请求具体包括:获取客户端登录信息、请求地址和报文体;判断是否需要进行脱敏处理具体包括:根据预先存储的脱敏配置判断是否需要对报文进行脱敏处理。具体地,请求识别模块具体用于:获取客户端登录信息、请求地址和报文体,结合客户端登录信息、请求地址和报文体,根据预先存储的脱敏配置判断是否需要对报文进行脱敏处理;若是则执行下一步,若否则结束流程。
79.优选地,当请求识别模块判断需要对报文进行脱敏处理时,则进一步根据客户端登录信息、请求地址和报文体,判断需要脱敏的报文类型,所述报文类型包括请求数据报文和响应数据报文。
80.具体地,当请求识别模块判断需要脱敏的报文类型为请求数据报文时:
81.所述请求接收模块用于通过spring cloud gateway接收客户端所发送的请求;
82.所述请求识别模块用于获取客户端登录信息、请求地址和报文体;
83.所述脱敏执行模块用于根据预先存储的脱敏配置对请求数据报文进行重构,并将重构后的请求数据报文存入spring cloud gateway后的微服务端。
84.具体地,当请求识别模块判断需要脱敏的报文类型为响应数据报文时:
85.所述请求接收模块用于通过spring cloud gateway接收客户端所发送的请求;
86.所述请求识别模块用于获取客户端登录信息、请求地址和报文体;
87.所述脱敏执行模块用于根据预先存储的脱敏配置对响应数据报文进行重构,并将重构后的响应数据报文返回向spring cloud gateway发送请求的客户端。
88.对应地,本技术方案还包括一种存储介质,所述存储介质包含计算机可执行指令,所述计算机可执行指令在由计算机处理器执行时用于执行如上所述的基于spring cloud gateway的报文脱敏方法。
89.应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
技术特征:1.一种基于spring cloud gateway的报文脱敏方法,其特征在于,包括以下步骤:s1.通过spring cloud gateway接收客户端所发送的请求;s2.识别接收到的请求,判断是否需要对报文进行脱敏处理;若是则执行下一步,若否则结束流程;s3.根据预先存储的脱敏配置对报文进行脱敏,得到脱敏后的报文。2.根据权利要求1所述的一种基于spring cloud gateway的报文脱敏方法,其特征在于,在步骤s2中,识别接收到的请求具体包括:获取客户端登录信息、请求地址和报文体;判断是否需要进行脱敏处理具体包括:根据预先存储的脱敏配置判断是否需要对报文进行脱敏处理;步骤s2具体为:获取客户端登录信息、请求地址和报文体,结合客户端登录信息、请求地址和报文体,根据预先存储的脱敏配置判断是否需要对报文进行脱敏处理;若是则执行下一步,若否则结束流程。3.根据权利要求2所述的一种基于spring cloud gateway的报文脱敏方法,其特征在于,在步骤s2中,若判断需要对报文进行脱敏处理时,则进一步根据客户端登录信息、请求地址和报文体,判断需要脱敏的报文类型,所述报文类型包括请求数据报文和响应数据报文。4.根据权利要求3所述的一种基于spring cloud gateway的报文脱敏方法,其特征在于,当需要脱敏的报文类型为请求数据报文时,本方法具体包括:通过spring cloud gateway接收客户端所发送的请求;获取客户端登录信息、请求地址和报文体;根据预先存储的脱敏配置对请求数据报文进行重构,并将重构后的请求数据报文存入spring cloud gateway后的微服务端。5.根据权利要求3所述的一种基于spring cloud gateway的报文脱敏方法,其特征在于,当需要脱敏的报文类型为响应数据报文时,本方法具体包括:通过spring cloud gateway接收客户端所发送的请求;获取客户端登录信息、请求地址和报文体;根据预先存储的脱敏配置对响应数据报文进行重构,并将重构后的响应数据报文返回向spring cloud gateway发送请求的客户端。6.一种基于spring cloud gateway的报文脱敏系统,其特征在于,包括:请求接收模块,用于通过spring cloud gateway接收客户端所发送的请求;请求识别模块,用于识别接收到的请求并判断是否需要对报文进行脱敏处理;若是则执行下一步,若否则结束流程;脱敏执行模块,用于根据预先存储的脱敏配置对报文进行脱敏,得到脱敏后的报文。7.根据权利要求6所述的一种基于spring cloud gateway的报文脱敏系统,其特征在于,在请求识别模块中,识别接收到的请求具体包括:获取客户端登录信息、请求地址和报文体;判断是否需要进行脱敏处理具体包括:根据预先存储的脱敏配置判断是否需要对报文进行脱敏处理;请求识别模块具体用于:获取客户端登录信息、请求地址和报文体,结合客户端登录信息、请求地址和报文体,根据预先存储的脱敏配置判断是否需要对报文进行脱敏处理;若是
则执行下一步,若否则结束流程。8.根据权利要求7所述的一种基于spring cloud gateway的报文脱敏系统,其特征在于,当请求识别模块判断需要对报文进行脱敏处理时,则进一步根据客户端登录信息、请求地址和报文体,判断需要脱敏的报文类型,所述报文类型包括请求数据报文和响应数据报文。9.根据权利要求8所述的一种基于spring cloud gateway的报文脱敏系统,其特征在于,当请求识别模块判断需要脱敏的报文类型为请求数据报文时:所述请求接收模块用于通过spring cloud gateway接收客户端所发送的请求;所述请求识别模块用于获取客户端登录信息、请求地址和报文体;所述脱敏执行模块用于根据预先存储的脱敏配置对请求数据报文进行重构,并将重构后的请求数据报文存入spring cloud gateway后的微服务端;当请求识别模块判断需要脱敏的报文类型为响应数据报文时:所述请求接收模块用于通过spring cloud gateway接收客户端所发送的请求;所述请求识别模块用于获取客户端登录信息、请求地址和报文体;所述脱敏执行模块用于根据预先存储的脱敏配置对响应数据报文进行重构,并将重构后的响应数据报文返回向spring cloud gateway发送请求的客户端。10.一种存储介质,其特征在于,所述存储介质包含计算机可执行指令,所述计算机可执行指令在由计算机处理器执行时用于执行权利要求1-5中任一项所述的基于spring cloud gateway的报文脱敏方法。
技术总结本发明提供了一种基于Spring Cloud Gateway的报文脱敏方法、系统及存储介质,包括以下步骤:S1.通过Spring Cloud Gateway接收客户端所发送的请求;S2.识别接收到的请求,判断是否需要对报文进行脱敏处理;若是则执行下一步,若否则结束流程;S3.根据预先存储的脱敏配置对报文进行脱敏,得到脱敏后的报文。与现有技术相比,本技术方案的有益效果是:在通过Spring Cloud Gateway接收请求后,通过识别接收到的请求判断是否需要对报文进行脱敏处理,并根据预先存储的脱敏配置对报文进行脱敏,通过统一处理统一配置,实现高效有序脱敏。实现高效有序脱敏。实现高效有序脱敏。
技术研发人员:闫磊 陈曦 周天佑 钱冰 朱亚威
受保护的技术使用者:明珠数字科技股份有限公司
技术研发日:2022.05.31
技术公布日:2022/11/1