CN114257421A - 请求验证方法、装置、计算机设备、存储介质 - Google Patents
请求验证方法、装置、计算机设备、存储介质 Download PDFInfo
- Publication number
- CN114257421A CN114257421A CN202111446083.3A CN202111446083A CN114257421A CN 114257421 A CN114257421 A CN 114257421A CN 202111446083 A CN202111446083 A CN 202111446083A CN 114257421 A CN114257421 A CN 114257421A
- Authority
- CN
- China
- Prior art keywords
- client
- verification
- parameter
- request
- data processing
- 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.)
- Pending
Links
- 238000012795 verification Methods 0.000 title claims abstract description 264
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000012545 processing Methods 0.000 claims abstract description 195
- 238000004590 computer program Methods 0.000 claims abstract description 25
- 230000002159 abnormal effect Effects 0.000 claims description 36
- 230000008569 process Effects 0.000 claims description 16
- 238000010200 validation analysis Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 230000005856 abnormality Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 150000003839 salts Chemical class 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请涉及一种请求验证方法、装置、计算机设备、存储介质和计算机程序产品。所述方法包括:当满足校验参数的更新条件时生成第一校验参数,通过长连接向客户端发送第一校验参数;接收客户端发送的数据处理请求,所述数据处理请求携带第二校验参数;当确定第一校验参数与第二校验参数不匹配时,向客户端发送第一验证请求,所述第一验证请求用于指示所述客户端生成待验证参数;接收客户端发送的待验证参数,当对待验证参数校验通过时,确定数据处理请求验证通过,对数据处理请求进行处理。采用本方法能够动态生成新的校验参数对数据处理请求进行校验,并在校验不通过时,发送验证请求对数据处理请求进行验证,从而提高对数据处理请求验证的准确率。
Description
技术领域
本申请涉及计算机应用技术领域,特别是涉及一种请求验证方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
在应用程序内,通常需要通过客户端向服务器接口发送数据请求,以指示服务器根据接收到的数据请求查询对应的数据,并将查询到的数据发送至客户端。但数据请求容易被伪造,从而导致数据容易被伪造方爬取,存在数据泄露风险。因此,需要对数据请求进行校验。
传统技术中,通常会将一个固定的盐值作为校验参数,通过服务器向客户端发送校验参数,指示客户端将校验参数携带于数据请求中。服务器在接收到数据请求后,若对校验参数校验通过,则会对数据请求进行处理,并处理得到的相关数据发送至客户端。
但是,采用固定的盐值作为校验参数,容易使得校验参数被破解,导致数据请求被伪造。
发明内容
基于此,有必要针对上述技术问题,提供一种请求验证方法、装置、计算机设备、存储介质和计算机程序产品。
第一方面,本申请提供了一种请求验证方法。应用于服务器,所述服务器与客户端通过长连接建立连接;所述方法包括:
当满足校验参数的更新条件时生成第一校验参数,通过所述长连接向所述客户端发送所述第一校验参数;
接收所述客户端发送的数据处理请求,所述数据处理请求携带第二校验参数;
当确定所述第一校验参数与所述第二校验参数不匹配时,向所述客户端发送第一验证请求,所述第一验证请求用于指示所述客户端生成待验证参数;
接收所述客户端发送的所述待验证参数,当对所述待验证参数校验通过时,确定所述数据处理请求验证通过,对所述数据处理请求进行处理。
在其中一个实施例中,所述方法还包括:
当确定在预设时长内通过所述长连接接收到的所述客户端发送的新的数据处理请求存在异常情况时,向所述客户端发送第二验证请求,所述第二验证请求用于指示所述客户端生成新的待验证参数;
接收所述客户端发送的所述新的待验证参数,当对所述新的待验证参数校验通过时,继续对所述新的数据处理请求进行处理。
在其中一个实施例中,所述当确定在预设时长内通过所述长连接接收到的所述客户端发送的新的数据处理请求存在异常情况时,向所述客户端发送第二验证请求,包括:
当出现以下情况中的任一种时,确定所述客户端发送的新的数据处理请求存在异常情况,向所述客户端发送所述第二验证请求:
在第一时长内未通过所述长连接接收到所述客户端发送的新的数据处理请求;
在第二时长内通过所述长连接接收到所述客户端发送的新的数据处理请求的数量大于阈值;
在第三时长内通过所述长连接接收到所述客户端发送的多个新的数据处理请求,并且多个所述新的数据处理请求需调用的接口相同;
通过所述长连接接收到所述客户端发送的多个新的数据处理请求,所述新的数据处理请求携带用户标识和地址标识,属于相同的用户标识下新的数据处理请求,具有不同的地址标识。
在其中一个实施例中,所述第一验证请求携带第三校验参数,所述第三校验参数与所述第一校验参数不同;所述第一验证请求用于指示所述客户端根据所述第三校验参数生成所述待验证参数。
在其中一个实施例中,所述第一验证请求携带页面验证参数,所述页面验证参数用于指示所述客户端显示验证页面,通过所述验证页面接收与所述页面验证参数相对应的所述待验证参数。
在其中一个实施例中,在所述当满足校验参数的更新条件时生成第一校验参数,通过所述长连接向连接中的所述客户端发送第一校验参数之前,还包括:
通过数据接口接收所述客户端发送的登录请求,所述登录请求携带第一客户端信息;
将所述第一客户端信息与第一数据库中的客户端信息进行比对,所述第一数据库中存储有已验证为异常的客户端信息;
当确定所述第一数据库中不存在所述第一客户端信息时,建立与所述客户端之间的所述长连接,所述长连接用于使所述服务器与所述客户端之间传输数据。
在其中一个实施例中,所述当确定所述第一数据库中不存在所述第一客户端信息时,建立与所述客户端之间的所述长连接,包括:
当确定所述第一数据库中不存在所述第一客户端信息时,接收所述客户端发送的连接请求,所述连接请求携带第二客户端信息;
将所述第二客户端信息与所述第一客户端信息进行比对,当所述第二客户端信息与所述第一客户端信息一致时,建立与所述客户端之间的所述长连接。
第二方面,本申请还提供了一种请求验证装置。应用于服务器,所述服务器与客户端通过长连接建立连接;所述装置包括:
第一校验参数发送模块,用于当满足校验参数的更新条件时生成第一校验参数,通过所述长连接向所述客户端发送所述第一校验参数;
第二校验参数接收模块,用于接收所述客户端发送的数据处理请求,所述数据处理请求携带第二校验参数;
第一验证请求发送模块,用于当确定所述第一校验参数与所述第二校验参数不匹配时,向所述客户端发送第一验证请求,所述第一验证请求用于指示所述客户端生成待验证参数;
待验证参数接收模块,用于接收所述客户端发送的所述待验证参数,当对所述待验证参数校验通过时,确定所述数据处理请求验证通过,对所述数据处理请求进行处理。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面任一项实施例所述的请求验证方法。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面任一项实施例所述的请求验证方法。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述第一方面任一项实施例所述的请求验证方法。
上述请求验证方法、装置、计算机设备、存储介质和计算机程序产品,通过在满足校验参数的更新条件时生成第一校验参数,通过长连接向客户端发送第一校验参数;在客户端发送的数据处理请求中第二校验参数与第一校验参数不匹配时,向客户端发送第一验证请求,指示客户端生成待验证参数;在对客户端发送的待验证参数校验通过时,确定数据处理请求验证通过,对数据处理请求进行处理,能够动态生成新的校验参数,采用新的校验参数对数据处理请求进行校验,并在校验不通过时,发送验证请求对数据处理请求进行验证,从而提高对数据处理请求验证的准确率,避免了数据处理请求被伪造。
附图说明
图1为一个实施例中请求验证方法的应用环境图;
图2为一个实施例中请求验证方法的流程示意图;
图3为一个实施例中长连接建立步骤的流程示意图;
图4为另一个实施例中请求验证方法的流程示意图;
图4a为一个实施例中请求验证方法的时序图;
图4b为一个实施例中待验证参数校验步骤的流程示意图;
图5为一个实施例中请求验证装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的请求验证方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。具体地,终端102中安装有客户端,客户端通过长连接与服务器104建立连接。服务器104在检测到满足校验参数的更新条件时生成第一校验参数,通过长连接向终端102发送第一校验参数。服务器104接收终端102发送的数据处理请求,数据处理请求携带第二校验参数;当确定第一校验参数与第二校验参数不匹配时,向终端102发送第一验证请求,第一验证请求用于指示终端102生成待验证参数。服务器104接收终端102发送的待验证参数,当对待验证参数校验通过时,确定数据处理请求验证通过,对数据处理请求进行处理。
其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种请求验证方法,本实施例以该方法应用于服务器进行举例说明,该方法包括以下步骤:
步骤S202,当满足校验参数的更新条件时生成第一校验参数,通过长连接向客户端发送第一校验参数。
其中,校验参数可以用于对客户端发送的数据处理请求进行校验。校验参数可以是服务器随机生成的参数,且服务器生成的每个校验参数之间存在差异。长连接用于使服务器与客户端之间传输数据。
具体地,服务器中预先存储了校验参数的更新条件,当服务器检测到满足校验参数的更新条件时,随机生成一个参数作为第一校验参数,通过长连接向客户端发送第一校验参数。客户端接收到第一校验参数之后,采用第一校验参数对客户端中存储的校验参数进行更新,并将更新后的校验参数添加至后续生成的数据处理请求中。
一个示例中,服务器可以采用校验参数的生成时间间隔作为校验参数的更新条件,如当服务器检测到当前时刻与上一次校验参数生成的时刻之间存在五分钟的间隔时,服务器确定满足校验参数的更新条件,生成第一校验参数。另一个示例中,服务器可以采用校验参数的出现次数作为校验参数的更新条件,如当服务器检测到接收到的数据处理请求中出现了五次相同的校验参数时,确定满足校验参数的更新条件,生成第一校验参数。
步骤S204,接收客户端发送的数据处理请求,数据处理请求携带第二校验参数。
具体地,服务器接收客户端发送的数据处理请求,获取数据处理请求中的第二校验参数。将第二校验参数与第一校验参数进行比较。当服务器确定第二校验参数与第一校验参数一致时,确定数据处理请求验证通过,对数据处理请求进行处理。当服务器确定第二校验参数与第一校验参数不一致时,执行步骤S206至步骤S208。
步骤S206,当确定第一校验参数与第二校验参数不匹配时,向客户端发送第一验证请求。
其中,第一验证请求用于指示客户端生成待验证参数。待验证参数用于对与数据处理请求相对应的客户端信息进行校验。
具体地,当服务器确定第一校验参数与第二校验参数不匹配时,服务器停止对数据处理请求进行处理。服务器生成第一验证请求,通过长连接向客户端发送第一验证请求。客户端接收第一验证请求,对第一验证请求进行处理,生成与第一验证请求对应的待验证参数,将待验证参数通过长连接发送至服务器。
步骤S208,接收客户端发送的待验证参数,当对待验证参数校验通过时,确定数据处理请求验证通过,对数据处理请求进行处理。
具体地,服务器接收客户端发送的待验证参数,采用与第一验证请求相对应的校验规则对待验证参数进行校验。当服务器确定待验证参数校验通过时,确定客户端发送的数据处理请求验证通过,继续对数据处理请求进行处理。当服务器确定待验证参数校验不通过时,确定客户端发送的数据处理请求验证不通过,停止对数据处理请求进行处理,将与数据处理请求相对应的客户端信息标记为异常,并添加至数据库中。
上述请求验证方法中,通过在满足校验参数的更新条件时生成第一校验参数,通过长连接向客户端发送第一校验参数;在客户端发送的数据处理请求中第二校验参数与第一校验参数不匹配时,向客户端发送第一验证请求,指示客户端生成待验证参数;在对客户端发送的待验证参数校验通过时,确定数据处理请求验证通过,对数据处理请求进行处理,能够动态生成新的校验参数,采用新的校验参数对数据处理请求进行校验,并在校验不通过时,发送验证请求对数据处理请求进行验证,从而提高对数据处理请求验证的准确率。
在一个实施例中,请求验证方法还包括:当确定在预设时长内通过长连接接收到的客户端发送的新的数据处理请求存在异常情况时,向客户端发送第二验证请求,第二验证请求用于指示客户端生成新的待验证参数;接收客户端发送的新的待验证参数,当对新的待验证参数校验通过时,继续对新的数据处理请求进行处理。
具体地,服务器中预先存储了数据处理请求异常条件。服务器采用数据处理请求异常条件对长连接接收到的客户端发送的新的数据处理请求进行判断,当服务器确定在预设时长内通过长连接接收到的新的数据处理请求存在异常情况时,生成第二验证请求,通过长连接向客户端发送第二验证请求。客户端接收第二验证请求,生成与第二验证请求相对应的新的待验证参数,将新的待验证参数通过长连接发送至服务器。服务器接收客户端发送的新的待验证参数,对新的待验证参数进行校验。当服务器确定对新的待验证参数校验通过时,确定新的数据处理请求验证通过,继续对新的数据处理请求进行处理。新的待验证参数生成的和校验的具体实施方式可以参照上述实施例中提供的待验证参数生成方式实现,在此不做具体阐述。
一个示例中,服务器可以采用数据处理请求的数量作为数据处理请求异常条件,如在预设时长内接收到的数据处理请求超过一百次,确定数据处理请求存在异常。另一个示例中,服务器可以采用数据处理请求的地址作为数据处理请求异常条件,如与在预设时长内接收到的数据处理请求相对应的地址超过五个,确定数据处理请求存在异常。
本实施例中,通过对预设时长内通过长连接接收到的客户端发送的新的数据处理请求进行判断,当接收到的数据处理请求存在异常情况时,发送第二验证请求,对数据处理请求进行验证,能够提高对数据处理请求验证的准确率。
在一个实施例中,请求验证方法还包括:当出现以下情况中的任一种时,确定客户端发送的新的数据处理请求存在异常情况,向客户端发送第二验证请求:在第一时长内未通过长连接接收到客户端发送的新的数据处理请求;在第二时长内通过长连接接收到客户端发送的新的数据处理请求的数量大于阈值;在第三时长内通过长连接接收到客户端发送的多个新的数据处理请求,并且多个新的数据处理请求需调用的接口相同;通过长连接接收到客户端发送的多个新的数据处理请求,新的数据处理请求携带用户标识和地址标识,属于相同的用户标识下新的数据处理请求,具有不同的地址标识。
一个示例中,当服务器在三十分钟内未通过长连接接收到客户端发送的新的数据处理请求时,确定客户端发送的新的数据处理请求存在异常情况,向客户端发送第二验证请求。
一个示例中,当服务器在一秒内通过长连接接收到客户端发送的新的数据处理请求超过五十个,或者在十分钟内通过长连接接收到客户端发送的新的数据处理请求超过五十个时,确定客户端发送的新的数据处理请求存在异常情况,向客户端发送第二验证请求。
一个示例中,当服务器在一小时内通过长连接接收到客户端发送的多个新的数据处理请求中,数据处理请求需调用的接口均为数据查询接口时,确定客户端发送的新的数据处理请求存在异常情况,向客户端发送第二验证请求。
一个示例中,当服务器通过长连接接收到客户端发送的多个新的数据处理请求中,数据处理请求i携带的用户标识为A,地址标识为X;数据处理请求j携带的用户标识为A,地址标识为Y;数据处理请求q携带的用户标识为A,地址标识为Z时,属于相同的用户标识A下的数据处理请求,具有不同的地址标识,确定客户端发送的新的数据处理请求存在异常情况,向客户端发送第二验证请求。
本实施例中,通过对多种数据处理请求的异常情况进行判断,能够在持续使用长连接的过程中对异常用户请求,短期内大量请求,疑似爬虫请求,同一用户多地登录等情况进行校验,提高对数据处理请求验证的准确率。
在一个实施例中,对与第一验证请求相对应的一种校验规则进行说明。第一验证请求携带第三校验参数,第三校验参数与第一校验参数不同;第一验证请求用于指示客户端根据第三校验参数生成待验证参数。
具体地,服务器生成的第一验证请求中携带第三校验参数,第三校验参数与第一校验参数不同。客户端接收第一验证请求,将第三校验参数作为待验证参数发送至服务器。服务器接收客户端发送的待验证参数,采用与第一验证请求相对应的校验规则对待验证参数和第三校验参数进行比较,当确定待验证参数与第三校验参数一致时,服务器确定对待验证参数校验通过。
本实施例中,通过发送携带第三校验参数的第一验证请求,采用第三校验参数对客户端发送的待验证参数进行校验,能够提高对数据处理请求验证的效率。
在一个实施例中,对与第一验证请求相对应的另一种校验规则进行说明。第一验证请求携带页面验证参数,页面验证参数用于指示客户端显示验证页面,通过验证页面接收与页面验证参数相对应的待验证参数。
具体地,服务器生成的第一验证请求中携带页面验证参数。客户端接收第一验证请求,显示验证页面,通过验证页面接收用户输入的与页面验证参数相对应的待验证参数,并将待验证参数发送至服务器。服务器接收待验证参数,采用与第一验证请求相对应的校验规则对待验证参数和页面验证参数进行匹配,当确定待验证参数和页面验证参数匹配时,服务器确定对待验证参数校验通过。
本实施例中,通过发送携带页面验证参数的第一验证请求,采用页面验证参数对客户端发送的待验证参数进行校验,能够将客户端与用户之间的交互纳入验证操作,使得对数据处理请求的验证操作更灵活。
在一个实施例中,如图3所示,在步骤S202,当满足校验参数的更新条件时生成第一校验参数,通过长连接向客户端发送第一校验参数之前,还包括:
步骤S302,通过数据接口接收客户端发送的登录请求,登录请求携带第一客户端信息。
步骤S304,将第一客户端信息与第一数据库中的客户端信息进行比对,第一数据库中存储有已验证为异常的客户端信息。
步骤S306,当确定第一数据库中不存在第一客户端信息时,建立与客户端之间的长连接。
其中,登录请求用于建立客户端与服务器之间的连接。第一客户端信息可以但不仅限于包括MAC地址(Medium Access Control,物理地址),ip地址(Internet ProtocolAddress,网际协议地址),设备号,用户id(标识),针对设备生产的设备id(标识)等信息中的至少一项。
具体地,在客户端启动时,获取第一客户端信息,生成携带第一客户端信息的登录请求,并将登录请求发送至服务器。服务器中存储有已验证为异常的客户端信息组成的第一数据库。服务器通过数据接口接收客户端发送的登录请求,获取登录请求中的第一客户端信息,将第一客户端信息与第一数据库中的数据进行比对。当服务器确定第一数据库中存在第一客户端信息时,将第一客户端信息标记为异常,停止对登录请求进行处理。当服务器确定第一数据库中不存在第一客户端信息时,执行步骤S306,建立与客户端之间的长连接。
本实施例中,通过对登录请求中的第一客户端信息进行校验,能够在客户端与服务器建立长连接之前,对发送数据处理请求的客户端进行管控,过滤携带异常标记的客户端,能够减少后续对携带异常标记的客户端发送的数据处理请求进行验证的工作量,提高对数据处理请求进行验证的效率。
在一个实施例中,步骤S306,当确定第一数据库中不存在第一客户端信息时,建立与客户端之间的长连接,包括:当确定第一数据库中不存在第一客户端信息时,接收客户端发送的连接请求,连接请求携带第二客户端信息;将第二客户端信息与第一客户端信息进行比对,当第二客户端信息与第一客户端信息一致时,建立与客户端之间的长连接。
具体地,客户端中预先存储了第二客户端信息。当服务器确定第一数据库中不存在第一客户端信息时,向客户端返回登录成功信息。客户端接收到登录成功信息之后,生成携带第二客户端信息的连接请求,并向服务器发送连接请求。服务器接收到连接请求之后,将连接请求中的第二客户端信息与第一客户端信息进行比对。当服务器确定第二客户端信息与第一客户端信息一致时,建立与客户端之间的长连接;当服务器确定第二客户端信息与第一客户端信息不一致时,停止对连接请求进行处理。
本实施例中,通过对连接请求中的第二客户端信息进行验证,建立验证通过的客户端与服务器之间的长连接,能够避免出现登录信息与连接信息中的客户端信息不一致的情况,进一步对发送数据处理请求的客户端进行管控,提高对数据处理请求进行验证的效率。
在一个实施例中,如图4所示,提供了一种请求验证方法,结合如图4a所示终端与服务器之间的数据传输流程,对请求验证方法进行说明。
步骤S402,通过数据接口接收客户端发送的登录请求,登录请求携带第一客户端信息。
步骤S404,将第一客户端信息与第一数据库中的客户端信息进行比对,第一数据库中存储有已验证为异常的客户端信息。
步骤S406,当确定第一数据库中不存在第一客户端信息时,接收客户端发送的连接请求,连接请求携带第二客户端信息。
步骤S408,将第二客户端信息与第一客户端信息进行比对,当第二客户端信息与第一客户端信息一致时,建立与客户端之间的长连接。
具体地,服务器通过数据接口接收客户端发送的携带第一客户端信息的登录请求,将第一客户端信息与第一数据库中的已验证为异常的客户端信息进行比对。当服务器确定第一数据块中不存在第一客户端信息时,向客户端发送登录成功信息,接收客户端发送的携带第二客户端信息的连接请求。当服务器确定第二客户端信息与第一客户端信息一致时,建立与客户端之间的长连接。当服务器确定满足校验参数的更新条件时,执行步骤S410至步骤S414,当服务器确定新的数据处理请求存在异常时,执行步骤S416至步骤S418。
步骤S410,当满足校验参数的更新条件时生成第一校验参数,通过长连接向客户端发送第一校验参数。
步骤S412,当确定数据处理请求携带的第二校验参数与第一校验参数不匹配时,向客户端发送第一验证请求。
具体地,当服务器确定当前时刻与校验参数上一次生成的时刻之间的间隔大于等于间隔阈值时,确定满足校验参数的更新条件,生成第一校验参数,通过长连接向客户端发送第一校验参数。客户端采用接收到的第一校验参数对客户端中已存储的校验参数进行更新,并将更新后的校验参数添加至后续生成的数据处理请求中。服务器接收客户端发送的携带第二校验参数的数据处理请求,将第二校验参数与第一校验数据进行比较。当服务器确定数据处理请求携带的第二校验参数与第一校验参数不匹配时,向客户端发送第一验证请求。
步骤S414,接收客户端发送的待验证参数,当对待验证参数校验通过时,确定数据处理请求验证通过,对数据处理请求进行处理。
具体地,客户端接收第一验证请求,对第一验证请求进行处理,生成与第一验证请求相对应的待验证参数,并将待验证参数发送至服务器中。服务器接收客户端发送的待验证参数,采用与第一验证请求对应的校验规则对待验证参数进行校验。当对待验证参数校验通过时,服务器确定数据处理请求验证通过,对数据处理请求进行处理。
一个示例中,参照图4b所示的流程示意图对待验证参数的校验过程进行说明:服务器通过长连接向客户端发送携带第三校验参数的第一验证请求,接收客户端发送的与第三校验参数相对应的待验证参数,当第三校验参数与待验证参数一致时,确定待验证参数校验通过,对数据处理请求进行处理。当第三校验参数与待验证参数不一致时,服务器通过长连接向客户端发送携带页面验证参数的验证请求,接收客户端发送的与页面验证参数相对应的待验证参数,当校验通过时,对数据处理请求进行处理;当校验未通过时,将与数据处理请求对应的客户端信息标记为异常。
步骤S416,当确定在预设时长内通过长连接接收到的客户端发送的新的数据处理请求存在异常时,向客户端发送第二验证请求。
步骤S418,接收客户端发送的新的待验证参数,当对新的待验证参数校验通过时,对新的数据处理请求进行处理。
具体地,当服务器确定在预设时长内通过长连接接收到的客户端发送的新的数据处理请求存在异常时,向客户端发送第二验证请求。客户端对接收到的第二验证请求进行处理,生成新的待验证参数,将新的待验证参数发送至服务器。当服务器确定对新的待验证参数校验通过时,对新的数据处理请求进行处理。当服务器确定对新的待验证参数校验不通过时,将新的数据处理请求中携带的客户端信息标记为异常,停止对数据处理请求进行处理。第二验证请求的具体实施方式可以参照上述实施例中提供的第一验证请求的实施方案实现,在此不做具体阐述。
本实施例中,通过将登录请求中的客户端信息与已验证为异常的客户端信息进行比较,将连接请求中的客户端信息与登录请求中的客户端信息进行比较,能够加强对客户端的管控,减少后续对数据处理请求验证的工作量,提高验证效率;通过在满足校验参数的更新条件时生成新的校验参数对客户端中存储的校验参数进行更新,对更新后的客户端发送的数据处理请求进行验证,能够动态下发校验参数,使得伪造方无法通过固定的校验参数生成数据处理请求,提高对数据处理请求验证的准确率;通过长连接对接收到的客户端发送的新的数据处理请求进行监控,在确定存在异常时,对新的数据处理请求进行验证,能够持续连接的过程中,识别并拦截异常数据处理请求,提高服务器与客户端之间数据传输的安全性。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的请求验证方法的请求验证装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个请求验证装置实施例中的具体限定可以参见上文中对于请求验证方法的限定,在此不再赘述。
在一个实施例中,如图5所示,提供了一种请求验证装置500,包括:第一校验参数发送模块502、第二校验参数接收模块504、第一验证请求发送模块506和待验证参数接收模块508,其中:
第一校验参数发送模块502,用于当满足校验参数的更新条件时生成第一校验参数,通过长连接向客户端发送第一校验参数。
第二校验参数接收模块504,用于接收客户端发送的数据处理请求,数据处理请求携带第二校验参数。
第一验证请求发送模块506,用于当确定第一校验参数与第二校验参数不匹配时,向客户端发送第一验证请求,第一验证请求用于指示客户端生成待验证参数。
待验证参数接收模块508,用于接收客户端发送的待验证参数,当对待验证参数校验通过时,确定数据处理请求验证通过,对数据处理请求进行处理。
在一个实施例中,请求验证装置500还包括:第二验证请求发送模块,用于当确定在预设时长内通过长连接接收到的客户端发送的新的数据处理请求存在异常情况时,向客户端发送第二验证请求,第二验证请求用于指示客户端生成新的待验证参数;待验证参数接收模块,用于接收客户端发送的新的待验证参数,当对新的待验证参数校验通过时,继续对新的数据处理请求进行处理。
在一个实施例中,第二验证请求发送模块还用于:当出现以下情况中的任一种时,确定客户端发送的新的数据处理请求存在异常情况,向客户端发送第二验证请求:在第一时长内未通过长连接接收到客户端发送的新的数据处理请求;在第二时长内通过长连接接收到客户端发送的新的数据处理请求的数量大于阈值;在第三时长内通过长连接接收到客户端发送的多个新的数据处理请求,并且多个新的数据处理请求需调用的接口相同;通过长连接接收到客户端发送的多个新的数据处理请求,新的数据处理请求携带用户标识和地址标识,属于相同的用户标识下新的数据处理请求,具有不同的地址标识。
在一个实施例中,第一验证请求携带第三校验参数,第三校验参数与第一校验参数不同;第一验证请求用于指示客户端根据第三校验参数生成待验证参数。
在一个实施例中,第一验证请求携带页面验证参数,页面验证参数用于指示客户端显示验证页面,通过验证页面接收与页面验证参数相对应的待验证参数。
在一个实施例中,请求验证装置500还包括:登录请求接收模块,用于通过数据接口接收客户端发送的登录请求,登录请求携带第一客户端信息;将第一客户端信息与第一数据库中的客户端信息进行比对,第一数据库中存储有已验证为异常的客户端信息;连接建立模块,用于当确定第一数据库中不存在第一客户端信息时,建立与客户端之间的长连接,长连接用于使服务器与客户端之间传输数据。
在一个实施例中,连接建立模块包括:连接请求发送单元,用于当确定第一数据库中不存在第一客户端信息时,接收客户端发送的连接请求,连接请求携带第二客户端信息;连接建立单元,用于将第二客户端信息与第一客户端信息进行比对,当第二客户端信息与第一客户端信息一致时,建立与客户端之间的长连接。
上述请求验证装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储校验参数、客户端信息和数据处理请求异常阈值。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种请求验证方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (11)
1.一种请求验证方法,其特征在于,应用于服务器,所述服务器与客户端通过长连接建立连接;所述方法包括:
当满足校验参数的更新条件时生成第一校验参数,通过所述长连接向所述客户端发送所述第一校验参数;
接收所述客户端发送的数据处理请求,所述数据处理请求携带第二校验参数;
当确定所述第一校验参数与所述第二校验参数不匹配时,向所述客户端发送第一验证请求,所述第一验证请求用于指示所述客户端生成待验证参数;
接收所述客户端发送的所述待验证参数,当对所述待验证参数校验通过时,确定所述数据处理请求验证通过,对所述数据处理请求进行处理。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当确定在预设时长内通过所述长连接接收到的所述客户端发送的新的数据处理请求存在异常情况时,向所述客户端发送第二验证请求,所述第二验证请求用于指示所述客户端生成新的待验证参数;
接收所述客户端发送的所述新的待验证参数,当对所述新的待验证参数校验通过时,继续对所述新的数据处理请求进行处理。
3.根据权利要求2所述的方法,其特征在于,所述当确定在预设时长内通过所述长连接接收到的所述客户端发送的新的数据处理请求存在异常情况时,向所述客户端发送第二验证请求,包括:
当出现以下情况中的任一种时,确定所述客户端发送的新的数据处理请求存在异常情况,向所述客户端发送所述第二验证请求:
在第一时长内未通过所述长连接接收到所述客户端发送的新的数据处理请求;
在第二时长内通过所述长连接接收到所述客户端发送的新的数据处理请求的数量大于阈值;
在第三时长内通过所述长连接接收到所述客户端发送的多个新的数据处理请求,并且多个所述新的数据处理请求需调用的接口相同;
通过所述长连接接收到所述客户端发送的多个新的数据处理请求,所述新的数据处理请求携带用户标识和地址标识,属于相同的用户标识下新的数据处理请求,具有不同的地址标识。
4.根据权利要求1所述的方法,其特征在于,所述第一验证请求携带第三校验参数,所述第三校验参数与所述第一校验参数不同;所述第一验证请求用于指示所述客户端根据所述第三校验参数生成所述待验证参数。
5.根据权利要求1所述的方法,其特征在于,所述第一验证请求携带页面验证参数,所述页面验证参数用于指示所述客户端显示验证页面,通过所述验证页面接收与所述页面验证参数相对应的所述待验证参数。
6.根据权利要求1~5任一项所述的方法,其特征在于,在所述当满足校验参数的更新条件时生成第一校验参数,通过所述长连接向连接中的所述客户端发送第一校验参数之前,还包括:
通过数据接口接收所述客户端发送的登录请求,所述登录请求携带第一客户端信息;
将所述第一客户端信息与第一数据库中的客户端信息进行比对,所述第一数据库中存储有已验证为异常的客户端信息;
当确定所述第一数据库中不存在所述第一客户端信息时,建立与所述客户端之间的所述长连接,所述长连接用于使所述服务器与所述客户端之间传输数据。
7.根据权利要求6所述的方法,其特征在于,所述当确定所述第一数据库中不存在所述第一客户端信息时,建立与所述客户端之间的所述长连接,包括:
当确定所述第一数据库中不存在所述第一客户端信息时,接收所述客户端发送的连接请求,所述连接请求携带第二客户端信息;
将所述第二客户端信息与所述第一客户端信息进行比对,当所述第二客户端信息与所述第一客户端信息一致时,建立与所述客户端之间的所述长连接。
8.一种请求验证装置,其特征在于,应用于服务器,所述服务器与客户端通过长连接建立连接;所述装置包括:
第一校验参数发送模块,用于当满足校验参数的更新条件时生成第一校验参数,通过所述长连接向所述客户端发送所述第一校验参数;
第二校验参数接收模块,用于接收所述客户端发送的数据处理请求,所述数据处理请求携带第二校验参数;
第一验证请求发送模块,用于当确定所述第一校验参数与所述第二校验参数不匹配时,向所述客户端发送第一验证请求,所述第一验证请求用于指示所述客户端生成待验证参数;
待验证参数接收模块,用于接收所述客户端发送的所述待验证参数,当对所述待验证参数校验通过时,确定所述数据处理请求验证通过,对所述数据处理请求进行处理。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
11.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111446083.3A CN114257421A (zh) | 2021-11-30 | 2021-11-30 | 请求验证方法、装置、计算机设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111446083.3A CN114257421A (zh) | 2021-11-30 | 2021-11-30 | 请求验证方法、装置、计算机设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114257421A true CN114257421A (zh) | 2022-03-29 |
Family
ID=80791433
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111446083.3A Pending CN114257421A (zh) | 2021-11-30 | 2021-11-30 | 请求验证方法、装置、计算机设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114257421A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104333562A (zh) * | 2014-11-27 | 2015-02-04 | 沈文策 | 数据包传输方法及装置 |
CN106570691A (zh) * | 2016-11-07 | 2017-04-19 | 努比亚技术有限公司 | 一种电子支付的方法、装置及终端 |
CN107563169A (zh) * | 2017-09-06 | 2018-01-09 | 深圳天珑无线科技有限公司 | 验证方法、验证系统及电子设备 |
-
2021
- 2021-11-30 CN CN202111446083.3A patent/CN114257421A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104333562A (zh) * | 2014-11-27 | 2015-02-04 | 沈文策 | 数据包传输方法及装置 |
CN106570691A (zh) * | 2016-11-07 | 2017-04-19 | 努比亚技术有限公司 | 一种电子支付的方法、装置及终端 |
CN107563169A (zh) * | 2017-09-06 | 2018-01-09 | 深圳天珑无线科技有限公司 | 验证方法、验证系统及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10073916B2 (en) | Method and system for facilitating terminal identifiers | |
WO2020211496A1 (zh) | 一种块链式账本中的签名验证方法、系统、装置及设备 | |
TWI667586B (zh) | 用以核對uefi認證變量變化之系統及方法 | |
CN112527912B (zh) | 基于区块链网络的数据处理方法、装置及计算机设备 | |
US20230015258A1 (en) | Data verification in a distributed data processing system | |
CN115659417A (zh) | 审计日志存储方法、验证方法、装置和计算机设备 | |
CN111431908A (zh) | 一种访问处理方法、装置及可读存储介质 | |
WO2022141024A1 (zh) | 基于区块链技术的业务交易方法、系统及存储介质 | |
CN112132576B (zh) | 基于区块链通信的支付信息处理方法及区块链信息平台 | |
CN115935414A (zh) | 基于区块链的数据校验方法、装置、电子设备和存储介质 | |
CN110597820A (zh) | 基于区块链的信息处理方法、装置、存储介质和设备 | |
CN114257421A (zh) | 请求验证方法、装置、计算机设备、存储介质 | |
CN114745173B (zh) | 登陆验证方法、装置、计算机设备和存储介质 | |
CN116010926A (zh) | 登陆认证方法、装置、计算机设备和存储介质 | |
WO2018233638A1 (zh) | Ai软件系统安全状态的确定方法及装置 | |
CN114398678A (zh) | 电子文件防篡改的登记验证方法、装置、电子设备及介质 | |
CN114692228A (zh) | 安全监控方法、装置、设备和可读存储介质 | |
CN114465816A (zh) | 密码喷洒攻击的检测方法、装置、计算机设备和存储介质 | |
US9210147B1 (en) | Method, apparatus and computer program product for assessing risk associated with authentication requests | |
CN110598477A (zh) | 基于区块链的信息处理方法、装置、存储介质和设备 | |
CN110599386A (zh) | 身份认证方法、装置、存储介质和计算机设备 | |
CN115905340A (zh) | 用户画像验证方法、装置、计算机设备和存储介质 | |
CN114614992B (zh) | 签名值输出及验证方法、装置、计算机设备、存储介质 | |
CN112104657B (zh) | 信息校验方法和装置 | |
CN116909785A (zh) | 异常事件的处理方法、装置、设备、存储介质和程序产品 |
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 |