CN110417615A - 校验开关控制方法、装置、设备及计算机可读存储介质 - Google Patents
校验开关控制方法、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN110417615A CN110417615A CN201910542313.2A CN201910542313A CN110417615A CN 110417615 A CN110417615 A CN 110417615A CN 201910542313 A CN201910542313 A CN 201910542313A CN 110417615 A CN110417615 A CN 110417615A
- Authority
- CN
- China
- Prior art keywords
- interface
- verification
- switch
- call request
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/04—Processing captured monitoring data, e.g. for logfile generation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明涉及软件运维技术领域,公开了一种校验开关控制方法、装置、设备及计算机可读存储介质。校验开关控制方法包括:当所有接口的校验开关处于开启状态时,检测当前是否处于访问高峰期;若当前处于访问高峰期,则每隔预设时长检测一次是否存在被高频率调用的目标接口;若存在被高频率调用的目标接口,则关闭所述目标接口的校验开关。通过本发明,当存在目标接口时,关闭目标接口的校验开关,即停止对该目标接口传递过来的参数进行校验,降低了服务器的资源消耗,从而保证了服务器性能。
Description
技术领域
本发明涉及软件运维技术领域,尤其涉及一种校验开关控制方法、装置、设备及计算机可读存储介质。
背景技术
为了满足用户的各种需求,服务器会提供一些接口,以供客户端进行调用,从而实现各种功能。与此同时,为了保证服务器的安全,客户端在调用接口时,服务器需要对接口传递的参数进行校验。
但是在一些特殊情况下,当服务器在同一时间点接收到大量的接口调用请求,若对每个接口传递过来的参数进行校验,会大量占用CPU、内存等相关资源,严重影响服务器性能,从而影响用户的体验。
发明内容
本发明的主要目的在于提供一种校验开关控制方法、装置、设备及计算机可读存储介质,旨在解决现有技术中接口调用请求高并发生时,对接口传递过来的参数进行校验,会严重影响服务器性能,从而影响用户的体验的技术问题。
为实现上述目的,本发明提供一种校验开关控制方法,所述校验开关控制方法包括以下步骤:
当所有接口的校验开关处于开启状态时,检测当前是否处于访问高峰期;
若当前处于访问高峰期,则每隔预设时长检测一次是否存在被高频率调用的目标接口;
若存在被高频率调用的目标接口,则关闭所述目标接口的校验开关。
可选地,所述当所有接口的校验开关处于开启状态时,检测当前是否处于访问高峰期的步骤包括:
当所有接口的校验开关处于开启状态时,检测当前时刻是否处于预设的目标事件发生时段;
若当前时刻处于预设的目标事件发生时段,则认定当前处于访问高峰期,若当前时刻不处于预设的目标事件发生时段,则认定当前处于访问低峰期。
可选地,所述若当前处于访问高峰期,则每隔预设时长检测一次是否存在被高频率调用的目标接口的步骤包括:
若当前处于访问高峰期,则当时间点到达检测时刻时,获取每个接口在所述检测时刻对应的时间段内的调用次数;
检测每个接口在所述检测时刻对应的时间段内的调用次数是否大于第一预设阈值;
若一个或多个接口在所述检测时刻对应的时间段内的调用次数是否大于第一预设阈值,则认定所述一个或多个接口为被高频率调用的目标接口。
可选地,所述若存在被高频率调用的目标接口,则关闭所述目标接口的校验开关的步骤包括:
若存在被高频率调用的目标接口,则从异常调用事件记录表中获取所述目标接口对应的异常调用事件发生次数;
检测所述目标接口对应的异常调用事件发生次数是否小于第二预设阈值;
若所述目标接口对应的异常调用事件发生次数小于第二预设阈值,则关闭所述目标接口的校验开关。
可选地,在所述当所有接口的校验开关处于开启状态时,检测当前是否处于访问高峰期的步骤之后,还包括:
当当前处于访问低峰期时,接收接口调用请求,并检测所述接口调用请求是否为非法接口调用请求;
若所述接口调用请求为非法接口调用请求,则将异常调用事件记录表中所述接口调用请求所请求调用的接口对应的异常调用事件发生次数加1。
可选地,所述当当前处于访问低峰期时,接收接口调用请求,并检测所述接口调用请求是否为非法接口调用请求的步骤包括:
当当前处于访问低峰期时,接收接口调用请求,并对所述接口调用请求进行拆分,得到拆分数据,其中,所述拆分数据包括所述接口调用请求对应的IP地址以及签名信息;
检测所述IP地址是否符合IPv4协议的规定;
若所述IP地址不符合IPv4协议的规定,则认定所述接口调用请求为非法接口调用请求;
若所述IP地址符合IPv4协议的规定,则获取所述IP地址在预设时段内对应的访问请求次数;
检测所述访问请求次数是否大于预设阈值;
若所述访问请求次数大于预设阈值,则认定所述接口调用请求为非法接口调用请求;
若所述访问请求次数小于或等于预设阈值,则检测是否存在所述IP地址对应的公钥;
若不存在所述IP地址对应的公钥,则认定所述接口调用请求为非法接口调用请求;
若存在所述IP地址对应的公钥,则检测所述公钥是否能对所述签名信息进行验签;
若所述公钥不能对所述签名信息进行验签,则认定所述接口调用请求为非法接口调用请求。
可选地,所述检测所述IP地址是否符合IPv4协议的规定的步骤包括:
根据所述IP地址中的分隔符,将所述IP地址拆分为四段数据;
检测所述四段数据中是否存在小于零或者大于255的数据;
若四段数据中不存在小于零或者大于255的数据,则判定所述IP地址符合IPv4协议的规定,若四段数据中存在小于零或者大于255的数据,则判定所述IP地址不符合IPv4协议的规定。
此外,为实现上述目的,本发明还提供一种校验开关控制装置,校验开关控制装置包括:
第一检测模块,用于当所有接口的校验开关处于开启状态时,检测当前是否处于访问高峰期;
第二检测模块,用于若当前处于访问高峰期,则每隔预设时长检测一次是否存在被高频率调用的目标接口;
控制模块,用于若存在被高频率调用的目标接口,则关闭所述目标接口的校验开关。
可选地,所述第一检测模块包括:
第一检测单元,用于当所有接口的校验开关处于开启状态时,检测当前时刻是否处于预设的目标事件发生时段;
第一判定单元,用于若当前时刻处于预设的目标事件发生时段,则认定当前处于访问高峰期,若当前时刻不处于预设的目标事件发生时段,则认定当前处于访问低峰期。
可选地,所述第二检测模块包括:
第一获取单元,用于若当前处于访问高峰期,则当时间点到达检测时刻时,获取每个接口在所述检测时刻对应的时间段内的调用次数;
第二检测单元,用于检测每个接口在所述检测时刻对应的时间段内的调用次数是否大于第一预设阈值;
第二判定单元,用于若一个或多个接口在所述检测时刻对应的时间段内的调用次数是否大于第一预设阈值,则认定所述一个或多个接口为被高频率调用的目标接口。
可选地,所述控制模块包括:
第二获取单元,用于若存在被高频率调用的目标接口,则从异常调用事件记录表中获取所述目标接口对应的异常调用事件发生次数;
第三检测单元,用于检测所述目标接口对应的异常调用事件发生次数是否小于第二预设阈值;
控制单元,用于若所述目标接口对应的异常调用事件发生次数小于第二预设阈值,则关闭所述目标接口的校验开关。
可选地,校验开关控制装置还包括:
第三检测模块,用于当当前处于访问低峰期时,接收接口调用请求,并检测所述接口调用请求是否为非法接口调用请求;
记录模块,用于若所述接口调用请求为非法接口调用请求,则将异常调用事件记录表中所述接口调用请求所请求调用的接口对应的异常调用事件发生次数加1。
可选地,所述第三检测模块包括:
拆分单元,用于当当前处于访问低峰期时,接收接口调用请求,并对所述接口调用请求进行拆分得到拆分数据,其中,所述拆分数据包括所述接口调用请求对应的IP地址以及签名信息;
第四检测单元,用于检测所述IP地址是否符合IPv4协议的规定;
第三判定单元,用于若所述IP地址不符合IPv4协议的规定,则认定所述接口调用请求为非法接口调用请求;
第三获取单元,用于若所述IP地址符合IPv4协议的规定,则获取所述IP地址在预设时段内对应的访问请求次数;
第五检测单元,用于检测所述访问请求次数是否大于预设阈值;
第四判定单元,用于若所述访问请求次数大于预设阈值,则认定所述接口调用请求为非法接口调用请求;
第六检测单元,用于若所述访问请求次数小于或等于预设阈值,则检测是否存在所述IP地址对应的公钥;
第五判定单元,用于若不存在所述IP地址对应的公钥,则认定所述接口调用请求为非法接口调用请求;
第七检测单元,用于若存在所述IP地址对应的公钥,则检测所述公钥是否能对所述签名信息进行验签;
第六判定单元,用于若所述公钥不能对所述签名信息进行验签,则认定所述接口调用请求为非法接口调用请求。
可选地,所述第四检测单元包括:
拆分子单元,用于根据所述IP地址中的分隔符,将所述IP地址拆分为四段数据;
检测子单元,用于检测所述四段数据中是否存在小于零或者大于255的数据;
判定子单元,用于若四段数据中不存在小于零或者大于255的数据,则判定所述IP地址符合IPv4协议的规定,若四段数据中存在小于零或者大于255的数据,则判定所述IP地址不符合IPv4协议的规定。
此外,为实现上述目的,本发明还提供一种校验开关控制设备,所述校验开关控制设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的校验开关控制程序,所述校验开关控制程序被所述处理器执行时实现如上所述的校验开关控制方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有校验开关控制程序,所述校验开关控制程序被处理器执行时实现如上所述的校验开关控制方法的步骤。
本发明中,当所有接口的校验开关处于开启状态时,检测当前是否处于访问高峰期;若当前处于访问高峰期,则每隔预设时长检测一次是否存在被高频率调用的目标接口;若存在被高频率调用的目标接口,则关闭所述目标接口的校验开关。通过本发明,当存在目标接口时,关闭目标接口的校验开关,即停止对该目标接口传递过来的参数进行校验,降低了服务器的资源消耗,从而保证了服务器性能。
附图说明
图1为本发明实施例方案涉及的硬件运行环境的校验开关控制设备结构示意图;
图2为本发明校验开关控制方法第一实施例的流程示意图;
图3为图2中步骤S30的细化流程示意图;
图4为本发明校验开关控制装置一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1为本发明实施例方案涉及的硬件运行环境的校验开关控制设备结构示意图。
如图1所示,该校验开关控制设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的校验开关控制设备结构并不构成对校验开关控制设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及校验开关控制程序。
在图1所示的校验开关控制设备中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的校验开关控制程序,并执行校验开关控制方法的各个步骤。
参照图2,图2为本发明校验开关控制方法第一实施例的流程示意图。
一实施例中,校验开关控制方法包括:
步骤S10,当所有接口的校验开关处于开启状态时,检测当前是否处于访问高峰期;
本实施例中,目标事件指出现接口调用高并发生的情况,例如,商家做活动时(秒杀、拼团、抢购),活动期间,服务器势必会被大量客户端访问,便会出现大量接口调用高并发生的情况。例如,目标事件发生时段是T1至T2,当所有接口的校验开关处于开启状态时,检测当前时刻是否处于T1至T2这段时段内。
若当前时刻处于T1至T2这段时段内,则认定当前处于访问高峰期,否则,认定当前处于访问低峰期。
步骤S20,若当前处于访问高峰期,则每隔预设时长检测一次是否存在被高频率调用的目标接口;
本实施例中,服务器会提供一些接口,以供客户端进行调用,从而实现各种功能。例如,提供的接口包括接口1至接口20。客户端可通过调用这些接口为用户提供各种服务。接口每被调用一次(不论调用是否成功),则将该接口对应的调用次数加1。
本实施例中,检测是否存在被高频率调用的目标接口的步骤可以在访问高峰期间持续进行。例如在T1至T2这段时段内(访问高峰期内)每隔一分钟检测一次是否存在被高频率调用的目标接口。具体的,预设时长可以设置为1分钟。则第一检测时刻j1为当前时间t1+1min,第二检测时刻j2为j1+1min,以此类推......
本实施例中,根据预设时长的时长以及实际情况对第一预设阈值进行设置,例如设置为1000。则在j1时刻,获取t1至j1这段时长(称为时间段1)内各个接口的调用次数,若存在某个或多个接口的调用次数大于1000,则说明这些接口在时间段1内,为被高频率调用的目标接口。同理,在j2时刻,获取j1至j2这段时长(称为时间段2)内各个接口的调用次数,若存在某个或多个接口的调用次数大于1000,则说明这些接口在时间段2内,为被高频率调用的目标接口,以此类推......
步骤S30,若存在被高频率调用的目标接口,则关闭所述目标接口的校验开关。
本实施例中,在T1至T2这段时段内(访问高峰期内)每隔一分钟检测一次是否存在被高频率调用的目标接口,若第一次检测到被高频率调用的目标接口为接口1、3、5,则仅关闭接口1、3、5的校验开关,若第二次检测到被高频率调用的目标接口为接口2、4、6,则仅关闭接口2、4、6的校验开关,以此类推......
由于对接口传递过来的参数进行校验会大量占用CPU、内存等服务器资源,会严重降低服务器性能。因此,本实施例中,当所有接口的校验开关处于开启状态时,检测当前是否处于访问高峰期;若当前处于访问高峰期,则每隔预设时长检测一次是否存在被高频率调用的目标接口;若存在被高频率调用的目标接口,则关闭所述目标接口的校验开关。通过本实施例,当存在目标接口时,关闭目标接口的校验开关,即停止对该目标接口传递过来的参数进行校验,降低了服务器的资源消耗,从而保证了服务器性能。
进一步地,本发明校验开关控制方法一实施例中,步骤S10包括:
当所有接口的校验开关处于开启状态时,检测当前时刻是否处于预设的目标事件发生时段;
本实施例中,目标事件指出现接口调用高并发生的情况,例如,商家做活动时(秒杀、拼团、抢购),活动期间,服务器势必会被大量客户端访问,便会出现大量接口调用高并发生的情况。例如,目标事件发生时段是T1至T2,当所有接口的校验开关处于开启状态时,检测当前时刻是否处于T1至T2这段时段内。
若当前时刻处于预设的目标事件发生时段,则认定当前处于访问高峰期,若当前时刻不处于预设的目标事件发生时段,则认定当前处于访问低峰期。
若当前时刻处于T1至T2这段时段内,则认定当前处于访问高峰期,否则,认定当前处于访问低峰期。
进一步地,本发明校验开关控制方法一实施例中,步骤S20包括:
若当前处于访问高峰期,则当时间点到达检测时刻时,获取每个接口在所述检测时刻对应的时间段内的调用次数;
本实施例中,服务器会提供一些接口,以供客户端进行调用,从而实现各种功能。例如,提供的接口包括接口1至接口20。客户端可通过调用这些接口为用户提供各种服务。接口每被调用一次(不论调用是否成功),则将该接口对应的调用次数加1。
本实施例中,检测是否存在被高频率调用的目标接口的步骤可以在访问高峰期间持续进行。例如在T1至T2这段时段内(访问高峰期内)每隔一分钟检测一次是否存在被高频率调用的目标接口。具体的,预设时长可以设置为1分钟。则第一检测时刻j1为当前时间t1+1min,第二检测时刻j2为j1+1min,以此类推......则预设时间段包括:时间段1(t1至j1)、时间段2(j1至j2)......
检测每个接口在所述检测时刻对应的时间段内的调用次数是否大于第一预设阈值;
本实施例中,根据预设时长的时长以及服务器的负载能力对第一预设阈值进行设置,例如设置为1000。则在j1时刻,获取t1至j1这段时长(称为时间段1)内各个接口的调用次数,并检测是否存在某个或多个接口的调用次数大于1000;同理,在j2时刻,获取j1至j2这段时长(称为时间段2)内各个接口的调用次数,并检测是否存在某个或多个接口的调用次数大于1000,以此类推......
若一个或多个接口在所述检测时刻对应的时间段内的调用次数是否大于第一预设阈值,则认定所述一个或多个接口为被高频率调用的目标接口。
本实施例中,在j1时刻,获取t1至j1这段时长(称为时间段1)内各个接口的调用次数,若存在某个或多个接口的调用次数大于1000,则说明这些接口在时间段1内,为被高频率调用的目标接口,则仅关闭这些接口的校验开关,以降低服务器的资源消耗;在j2时刻,获取j1至j2这段时长(称为时间段2)内各个接口的调用次数,若存在某个或多个接口的调用次数大于1000,则说明这些接口在时间段2内,为被高频率调用的目标接口,则仅关闭这些接口的校验开关,以降低服务器的资源消耗;以此类推......
进一步地,参照图3,图3为图2中步骤S30的细化流程示意图。
本发明校验开关控制方法一实施例中,步骤S30包括:
步骤S301,若存在被高频率调用的目标接口,则从异常调用事件记录表中获取所述目标接口对应的异常调用事件发生次数;
本实施例中,预先构建一张异常调用事件记录表,该异常调用事件记录表用于记录每个接口及其对应的异常调用事件发生次数。且初始时每个接口对应的异常调用事件发生次数为0。
本实施例中,若检测到接口调用请求为非法接口调用请求,且该接口调用请求请求调用的接口为接口x,则将接口x对应的异常调用事件发生次数加1。在处于访问低峰期时,由于所有接口的校验开关处于开启状态,可对接收到的针对各个接口的接口调用请求进行验证,当检测到某个接口调用请求为非法接口调用请求,则将异常调用事件记录表中该接口调用请求请求调用的接口对应的异常调用事件发生次数加1。即可得到在访问低峰期间,所有接口对应的异常调用事件发生次数。
本实施例中,若存在被高频率调用的目标接口,则从异常调用事件记录表中获取该目标接口对应的异常调用事件发生次数n。
步骤S302,检测所述目标接口对应的异常调用事件发生次数是否小于第二预设阈值;
本实施例中,某个接口对应的异常调用事件发生次数越高说明其越容易遭受到非法调用的攻击。即某个接口对应的异常调用事件发生次数越高,该接口的危险性越大。在此,可设置一第二预设阈值,例如20。若接口对应的异常调用事件发生次数小于20,说明该接口遭受到非法调用攻击的次数较低,该接口比较安全,若接口对应的异常调用事件发生次数大于或等于20,说明该接口遭受到非法调用攻击的次数较多,该接口比较危险。
步骤S303,若所述目标接口对应的异常调用事件发生次数小于第二预设阈值,则关闭所述目标接口的校验开关。
本实施例中,若目标接口对应的异常调用事件发生次数小于20,说明该接口遭受到非法调用攻击的次数较低,该接口比较安全。此时即使关闭目标接口的校验开关,遭受到非法调用攻击的风险性也比较低,在降低了服务器资源消耗的同时,保证了服务器的安全。
进一步地,本发明校验开关控制方法一实施例中,在步骤S10之后,还包括:
步骤S40,当当前处于访问低峰期时,接收接口调用请求,并检测所述接口调用请求是否为非法接口调用请求;
其中,步骤S40包括:
步骤S401,当当前处于访问低峰期时,接收接口调用请求,并对所述接口调用请求进行拆分得到拆分数据,其中,所述拆分数据包括所述接口调用请求对应的IP地址以及签名信息;
本实施例中,发出调用请求的主体为客户端,客户端与服务器直接若要进行通信,则必须遵循一定的通信协议。按照此通信协议的规定对接收到的接口调用请求进行拆分,即可得到包括IP地址以及签名信息的拆分数据。如通信协议规定客户端发送的信息必须以10个byte为最小发送单位,且其中前2个byte为IP地址,随后6个byte为请求参数,最后两个byte为签名信息。即byte0、byte1中携带的信息表示IP地址,byte8、byte9携带的信息表示签名信息。从而当接收到接口调用请求时,将接口调用请求拆分为byte0至byte9,抓取byte0和byte1中的信息作为IP地址,抓取byte8和byte9中的信息作为签名信息。此外也可以按照其他的通信规则对接收到的接口请求参数进行拆分,对此不进行限定。
步骤S402,检测所述IP地址是否符合IPv4协议的规定;
一实施例中,步骤S402包括:检测所述IP地址是否符合IPv4协议的规定;
根据所述IP地址中的分隔符,将所述IP地址拆分为四段数据;
本实施例中,根据IPv4(是互联网协议Internet Protocol,IP的第四版)的规定:合法IPv4地址分为四段三位数:***.***.***.***,且每段三位数不超过255,不小于0。根据该规定,即可判断IP地址是否符合IPv4的规定。首先根据分隔符“.”将IP地址拆分为四段三位数。
检测所述四段数据中是否存在小于零或者大于255的数据;
本实施例中,由于IPv4协议规定每段三位数不超过255,不小于0,则检测四段数据中是否存在小于零或大于255的异常数据。
若四段数据中不存在小于零或者大于255的数据,则判定所述IP地址符合IPv4协议的规定,若四段数据中存在小于零或者大于255的数据,则判定所述IP地址不符合IPv4协议的规定。
本实施例中,若四段三位数中存在大于255或者小于0的数,则该IP地址为非法IP地址(即IP地址不符合IPv4协议的规定);若四段三位数中不存在大于255或者小于0的数,则该IP地址为合法IP地址(即IP地址符合IPv4协议的规定)。
步骤S403,若所述IP地址不符合IPv4协议的规定,则认定所述接口调用请求为非法接口调用请求;
本实施例中,若IP地址不符合IPv4协议的规定,则认定接口调用请求为非法接口调用请求。
步骤S404,若所述IP地址符合IPv4协议的规定,则获取所述IP地址在预设时段内对应的访问请求次数;
本实施例中,若IP地址符合IPv4协议的规定,则进一步获取该IP地址在预设时段内对应的访问请求次数。
本实施例中,服务器每次接收到接口调用请求(不论请求调用哪个接口),均将接收到请求的时刻以及接口调用请求对应的IP地址记录在日志中。
本实施例中,预设时段根据实际情况进行设置,例如以接收接口调用请求的时刻t2向前2小时这段时间,作为预设时段。根据日志中记录的信息,即可得到该IP地址在预设时段内发送过的接口调用请求(不论请求调用哪个接口)的次数(即获取IP地址在预设时段内对应的访问请求次数)。
步骤S405,检测所述访问请求次数是否大于预设阈值;
一般来说,若同一IP地址在一段时间内多次访问服务器,即多次发送接口调用请求(不论请求调用哪个接口),这种情况是不正常的。因此,可根据实际情况预设一个阈值,例如7次。并检测IP地址在预设时段内对应的访问请求次数是否大于预设阈值。
步骤S406,若所述访问请求次数大于预设阈值,则认定所述接口调用请求为非法接口调用请求;
本实施例中,若检测到IP地址在预设时段内对应的访问请求次数大于预设阈值,则认定出现了异常事件,并认定该IP地址对应的接口调用请求为非法接口调用请求。
步骤S407,若所述访问请求次数小于或等于预设阈值,则检测是否存在所述IP地址对应的公钥;步骤S408,若不存在所述IP地址对应的公钥,则认定所述接口调用请求为非法接口调用请求;步骤S409,若存在所述IP地址对应的公钥,则检测所述公钥是否能对所述签名信息进行验签;步骤S410,若所述公钥不能对所述签名信息进行验签,则认定所述接口调用请求为非法接口调用请求。
本实施例中,若访问请求次数小于或等于预设阈值,则进一步检测是否存在该IP地址对应的公钥。
本实施例中,默认客户端的IP地址是固定的,服务器通过非对称算法为每个IP地址生成一对公私钥。例如为IP地址1生成的公钥为S1,私钥为s1,并将私钥s1发给该IP地址对应的客户端1,公钥S1保存在服务器中。当客户端1发送接口调用请求时,根据私钥s1生成签名信息,并将该签名信息添加至接口调用请求中,一同发送给服务器。只有当服务器接收到该接口调用请求时,根据对应的IP地址,获取到公钥,且通过该公钥对签名信息验签通过时(即通过公钥对签名信息解密成功),认定该接口调用请求是合法接口调用请求。若不存在IP地址对应的公钥,或IP地址对应的公钥无法对签名信息进行验签,均认定该接口调用请求为非法接口调用请求。
步骤S50,若所述接口调用请求为非法接口调用请求,则将异常调用事件记录表中所述接口调用请求所请求调用的接口对应的异常调用事件发生次数加1。
本实施例中,预先构建一张异常调用事件记录表,该异常调用事件记录表用于记录每个接口及其对应的异常调用事件发生次数。且初始时每个接口对应的异常调用事件发生次数为0。
本实施例中,若检测到接口调用请求为非法接口调用请求,且该接口调用请求请求调用的接口为接口x,则将接口x对应的异常调用事件发生次数加1。如此,在处于访问低峰期时,由于所有接口的校验开关处于开启状态,可对接收到的针对各个接口的接口调用请求进行验证,当检测到某个接口调用请求为非法接口调用请求,则将异常调用事件记录表中该接口调用请求请求调用的接口对应的异常调用事件发生次数加1。即可得到在访问低峰期间,所有接口对应的异常调用事件发生次数。
参照图4,图4为本发明校验开关控制装置一实施例的功能模块示意图。
本发明校验开关控制装置一实施例中,所述校验开关控制装置包括:
第一检测模块,用于当所有接口的校验开关处于开启状态时,检测当前是否处于访问高峰期;
第二检测模块,用于若当前处于访问高峰期,则每隔预设时长检测一次是否存在被高频率调用的目标接口;
控制模块,用于若存在被高频率调用的目标接口,则关闭所述目标接口的校验开关。
本实施例中,当所有接口的校验开关处于开启状态时,检测当前是否处于访问高峰期;若当前处于访问高峰期,则每隔预设时长检测一次是否存在被高频率调用的目标接口;若存在被高频率调用的目标接口,则关闭所述目标接口的校验开关。通过本实施例,当存在目标接口时,关闭目标接口的校验开关,即停止对该目标接口传递过来的参数进行校验,降低了服务器的资源消耗,从而保证了服务器性能。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有校验开关控制程序,所述校验开关控制程序被处理器执行时实现如上校验开关控制方法各个实施例的步骤。
本发明计算机可读存储介质的具体实施例与上述校验开关控制方法的各个实施例基本相同,在此不做赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种校验开关控制方法,其特征在于,所述校验开关控制方法包括以下步骤:
当所有接口的校验开关处于开启状态时,检测当前是否处于访问高峰期;
若当前处于访问高峰期,则每隔预设时长检测一次是否存在被高频率调用的目标接口;
若存在被高频率调用的目标接口,则关闭所述目标接口的校验开关。
2.如权利要求1所述的校验开关控制方法,其特征在于,所述当所有接口的校验开关处于开启状态时,检测当前是否处于访问高峰期的步骤包括:
当所有接口的校验开关处于开启状态时,检测当前时刻是否处于预设的目标事件发生时段;
若当前时刻处于预设的目标事件发生时段,则认定当前处于访问高峰期,若当前时刻不处于预设的目标事件发生时段,则认定当前处于访问低峰期。
3.如权利要求1所述的校验开关控制方法,其特征在于,所述若当前处于访问高峰期,则每隔预设时长检测一次是否存在被高频率调用的目标接口的步骤包括:
若当前处于访问高峰期,则当时间点到达检测时刻时,获取每个接口在所述检测时刻对应的时间段内的调用次数;
检测每个接口在所述检测时刻对应的时间段内的调用次数是否大于第一预设阈值;
若一个或多个接口在所述检测时刻对应的时间段内的调用次数是否大于第一预设阈值,则认定所述一个或多个接口为被高频率调用的目标接口。
4.如权利要求1所述的校验开关控制方法,其特征在于,所述若存在被高频率调用的目标接口,则关闭所述目标接口的校验开关的步骤包括:
若存在被高频率调用的目标接口,则从异常调用事件记录表中获取所述目标接口对应的异常调用事件发生次数;
检测所述目标接口对应的异常调用事件发生次数是否小于第二预设阈值;
若所述目标接口对应的异常调用事件发生次数小于第二预设阈值,则关闭所述目标接口的校验开关。
5.如权利要求1至4中任一项所述的校验开关控制方法,其特征在于,在所述当所有接口的校验开关处于开启状态时,检测当前是否处于访问高峰期的步骤之后,还包括:
当当前处于访问低峰期时,接收接口调用请求,并检测所述接口调用请求是否为非法接口调用请求;
若所述接口调用请求为非法接口调用请求,则将异常调用事件记录表中所述接口调用请求所请求调用的接口对应的异常调用事件发生次数加1。
6.如权利要求5所述的校验开关控制方法,其特征在于,所述当当前处于访问低峰期时,接收接口调用请求,并检测所述接口调用请求是否为非法接口调用请求的步骤包括:
当当前处于访问低峰期时,接收接口调用请求,并对所述接口调用请求进行拆分,得到拆分数据,其中,所述拆分数据包括所述接口调用请求对应的IP地址以及签名信息;
检测所述IP地址是否符合IPv4协议的规定;
若所述IP地址不符合IPv4协议的规定,则认定所述接口调用请求为非法接口调用请求;
若所述IP地址符合IPv4协议的规定,则获取所述IP地址在预设时段内对应的访问请求次数;
检测所述访问请求次数是否大于预设阈值;
若所述访问请求次数大于预设阈值,则认定所述接口调用请求为非法接口调用请求;
若所述访问请求次数小于或等于预设阈值,则检测是否存在所述IP地址对应的公钥;
若不存在所述IP地址对应的公钥,则认定所述接口调用请求为非法接口调用请求;
若存在所述IP地址对应的公钥,则检测所述公钥是否能对所述签名信息进行验签;
若所述公钥不能对所述签名信息进行验签,则认定所述接口调用请求为非法接口调用请求。
7.如权利要求6所述的校验开关控制方法,其特征在于,所述检测所述IP地址是否符合IPv4协议的规定的步骤包括:
根据所述IP地址中的分隔符,将所述IP地址拆分为四段数据;
检测所述四段数据中是否存在小于零或者大于255的数据;
若四段数据中不存在小于零或者大于255的数据,则判定所述IP地址符合IPv4协议的规定,若四段数据中存在小于零或者大于255的数据,则判定所述IP地址不符合IPv4协议的规定。
8.一种校验开关控制装置,其特征在于,所述校验开关控制装置包括:
第一检测模块,用于当所有接口的校验开关处于开启状态时,检测当前是否处于访问高峰期;
第二检测模块,用于若当前处于访问高峰期,则每隔预设时长检测一次是否存在被高频率调用的目标接口;
控制模块,用于若存在被高频率调用的目标接口,则关闭所述目标接口的校验开关。
9.一种校验开关控制设备,其特征在于,所述校验开关控制设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的校验开关控制程序,所述校验开关控制程序被所述处理器执行时实现如权利要求1至7中任一项所述的校验开关控制方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有校验开关控制程序,所述校验开关控制程序被处理器执行时实现如权利要求1至7中任一项所述的校验开关控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910542313.2A CN110417615B (zh) | 2019-06-21 | 2019-06-21 | 校验开关控制方法、装置、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910542313.2A CN110417615B (zh) | 2019-06-21 | 2019-06-21 | 校验开关控制方法、装置、设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110417615A true CN110417615A (zh) | 2019-11-05 |
CN110417615B CN110417615B (zh) | 2022-04-12 |
Family
ID=68359496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910542313.2A Active CN110417615B (zh) | 2019-06-21 | 2019-06-21 | 校验开关控制方法、装置、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110417615B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113778725A (zh) * | 2020-06-03 | 2021-12-10 | 北京沃东天骏信息技术有限公司 | 一种数据校验方法和装置 |
CN113986605A (zh) * | 2021-10-13 | 2022-01-28 | 烽火超微信息科技有限公司 | 系统性能优化方法、装置、设备及可读存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6754179B1 (en) * | 2000-06-13 | 2004-06-22 | Lsi Logic Corporation | Real time control of pause frame transmissions for improved bandwidth utilization |
CN1520098A (zh) * | 2002-12-09 | 2004-08-11 | �ձ�������ʽ���� | 客户/服务器型分布系统的维护接口用户验证方法及设备 |
CN104392157A (zh) * | 2014-11-18 | 2015-03-04 | 深圳市腾讯计算机系统有限公司 | 密码锁屏方法及装置 |
CN106557925A (zh) * | 2016-11-29 | 2017-04-05 | 流量海科技成都有限公司 | 一种反欺诈支付的校验方法及系统 |
CN107135073A (zh) * | 2016-02-26 | 2017-09-05 | 北京京东尚科信息技术有限公司 | 接口调用方法和装置 |
CN107704765A (zh) * | 2017-08-28 | 2018-02-16 | 深圳市诚壹科技有限公司 | 一种接口访问方法、服务器及计算机可读存储介质 |
CN108512845A (zh) * | 2018-03-30 | 2018-09-07 | 广州视源电子科技股份有限公司 | 接口调用的校验方法及装置 |
CN109728969A (zh) * | 2018-05-18 | 2019-05-07 | 平安普惠企业管理有限公司 | 应用软件的异常用户侦测方法、监控服务端及存储介质 |
-
2019
- 2019-06-21 CN CN201910542313.2A patent/CN110417615B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6754179B1 (en) * | 2000-06-13 | 2004-06-22 | Lsi Logic Corporation | Real time control of pause frame transmissions for improved bandwidth utilization |
CN1520098A (zh) * | 2002-12-09 | 2004-08-11 | �ձ�������ʽ���� | 客户/服务器型分布系统的维护接口用户验证方法及设备 |
CN104392157A (zh) * | 2014-11-18 | 2015-03-04 | 深圳市腾讯计算机系统有限公司 | 密码锁屏方法及装置 |
CN107135073A (zh) * | 2016-02-26 | 2017-09-05 | 北京京东尚科信息技术有限公司 | 接口调用方法和装置 |
CN106557925A (zh) * | 2016-11-29 | 2017-04-05 | 流量海科技成都有限公司 | 一种反欺诈支付的校验方法及系统 |
CN107704765A (zh) * | 2017-08-28 | 2018-02-16 | 深圳市诚壹科技有限公司 | 一种接口访问方法、服务器及计算机可读存储介质 |
CN108512845A (zh) * | 2018-03-30 | 2018-09-07 | 广州视源电子科技股份有限公司 | 接口调用的校验方法及装置 |
CN109728969A (zh) * | 2018-05-18 | 2019-05-07 | 平安普惠企业管理有限公司 | 应用软件的异常用户侦测方法、监控服务端及存储介质 |
Non-Patent Citations (1)
Title |
---|
方辉等: "CRC校验在计算机与S7200PLC通信中的设计与实现", 《现代电子技术》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113778725A (zh) * | 2020-06-03 | 2021-12-10 | 北京沃东天骏信息技术有限公司 | 一种数据校验方法和装置 |
CN113986605A (zh) * | 2021-10-13 | 2022-01-28 | 烽火超微信息科技有限公司 | 系统性能优化方法、装置、设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110417615B (zh) | 2022-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109587168B (zh) | 软件定义网络中基于拟态防御的网络功能部署方法 | |
US10742685B2 (en) | Flow control method and device | |
US7941838B2 (en) | Firewall control with multiple profiles | |
CN107645478B (zh) | 网络攻击防御系统、方法及装置 | |
EP3396905B1 (en) | Method and device for securely sending a message | |
US11743296B2 (en) | Secure network device management in a telecommunications network | |
CN107454082A (zh) | 基于拟态防御的安全云服务构建方法及装置 | |
US9378365B2 (en) | Recording activity-triggered computer video output | |
WO2012058486A2 (en) | Automated policy builder | |
CN103268255A (zh) | 一种触发终端执行处理的方法、装置和系统 | |
US20150334029A1 (en) | Differentiated quality of service using security as a service | |
CN111404956A (zh) | 一种风险信息获取方法、装置、电子设备及存储介质 | |
US20230254146A1 (en) | Cybersecurity guard for core network elements | |
CN110417615A (zh) | 校验开关控制方法、装置、设备及计算机可读存储介质 | |
CN109117609A (zh) | 一种请求拦截方法及装置 | |
CN114237828A (zh) | Usb设备的重定向方法、装置、计算机设备及介质 | |
Ritzdorf | Analyzing covert channels on mobile devices | |
CN103051623A (zh) | 限制开放平台的调用的方法 | |
RU2514137C1 (ru) | Способ автоматической настройки средства безопасности | |
CN112202711A (zh) | 终端的网络访问控制方法、装置、电子设备及存储介质 | |
CN111083173A (zh) | 基于openflow协议的网络通信中的动态防御方法 | |
CN114448888B (zh) | 金融网络拟态路由方法及装置 | |
CN115883471A (zh) | 应用网关及其流量管控方法 | |
CN110932733B (zh) | 按键扫描方法及输入设备 | |
CN115633359A (zh) | Pfcp会话安全检测方法、装置、电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |