CN114614996B - 一种终端请求处理方法、装置及系统 - Google Patents

一种终端请求处理方法、装置及系统 Download PDF

Info

Publication number
CN114614996B
CN114614996B CN202210512105.XA CN202210512105A CN114614996B CN 114614996 B CN114614996 B CN 114614996B CN 202210512105 A CN202210512105 A CN 202210512105A CN 114614996 B CN114614996 B CN 114614996B
Authority
CN
China
Prior art keywords
request
api
client
check code
parameter
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.)
Active
Application number
CN202210512105.XA
Other languages
English (en)
Other versions
CN114614996A (zh
Inventor
陆天钦
尹武
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen SDMC Technology Co Ltd
Original Assignee
Shenzhen SDMC Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen SDMC Technology Co Ltd filed Critical Shenzhen SDMC Technology Co Ltd
Priority to CN202210512105.XA priority Critical patent/CN114614996B/zh
Publication of CN114614996A publication Critical patent/CN114614996A/zh
Application granted granted Critical
Publication of CN114614996B publication Critical patent/CN114614996B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos

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

本申请公开提供了一种终端请求处理方法、装置及系统,其中,该方法包括:接收包括请求参数和第一校验码的第一客户端请求,第一校验码是客户端按照第一预设规则,利用请求参数、第一Api标识和第一Api秘钥生成的;按照第二预设规则,利用请求参数、第二Api标识和第二Api秘钥生成第二校验码;若第一校验码和第二校验码满足预设关系,则向服务端发送第二客户端请求,解决了现有技术中服务器基于Token的身份验证或是一些简单的参数校验,导致服务端负担过重以及验证不完全存在安全隐患的问题。

Description

一种终端请求处理方法、装置及系统
技术领域
本发明涉及终端请求处理技术领域,具体涉及一种终端请求处理方法、装置及系统。
背景技术
在终端与服务端交互的场景中,服务端通常需要对终端的请求做安全校验,移动互联网大环境下,更加强调服务端对客户端请求的安全识别和非法性校验,相关技术中,服务端大多采用的是基于Token的身份验证或是一些简单的参数校验,主要面临以下问题:
1.校验任务由服务端单独完成,终端请求数量巨大,给服务端造成巨大压力;
2.当客户端请求的部分参数做出修改后,服务端无法对其做全面的安全校验,致使一些恶意客户端通过安全验证,对服务端进行非法攻击和恶意篡改。
综上所述,现有终端请求安全校验技术难以对终端和服务端交互进行有效的保护,无法满足服务端的安全要求。
发明内容
因此,本发明要解决的技术问题在于克服现有技术中服务端采用基于Token的身份验证或是一些简单的参数校验,导致服务端负担过重以及验证不完全存在安全隐患的缺陷,从而提供一种终端请求处理方法、装置及系统。
为解决上述技术问题,本发明公开实施例至少提供一种终端请求处理方法、装置及系统。
第一方面,本发明公开实施例提供了一种终端请求处理方法,包括:
接收第一客户端请求,所第一述客户端请求包括请求参数和第一校验码,所述第一校验码是客户端按照第一预设规则,利用所述请求参数、第一Api标识和第一Api秘钥生成的;
按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码;
判断所述第一校验码和所述第二校验码是否满足预设关系;
若所述第一校验码和所述第二校验码满足预设关系,则向服务端发送第二客户端请求。
可选地,所述第一客户端请求还包括所述第一Api标识和所述第一Api秘钥,在所述按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码之前,所述方法还包括:对所述第一Api标识和所述第一Api秘钥进行校验;所述按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码为:若所述第一Api标识和所述第一Api秘钥通过校验,则按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码。
可选地,在所述接收第一客户端请求之前,所述方法还包括:接收所述第二Api标识和所述第二Api秘钥。
可选地,在所述按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码之前,所述方法还包括:判断所述终端请求是否为静态资源访问;所述按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码为:若所述终端请求不是静态资源访问,则按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码;所述向服务端发送第二客户端请求为:若所述终端请求是静态资源访问,则向服务端发送第二客户端请求。
可选地,所述按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码包括:采用所述第一客户端请求中的请求头、请求体以及请求URI作为标识,按照第三预设规则对所述标识进行排序和拼接;对拼接结果进行MD5加密。
第二方面,本发明公开实施例还提供一种终端请求处理方法,包括:
生成第二Api标识和第二Api秘钥;
分别向客户端和网关发送所述第二Api标识和所述第二Api秘钥。
第三方面,本发明公开实施例还提供一种终端请求处理方法,包括:
接收第一Api标识和第一Api秘钥;
按照第一预设规则、利用所述请求参数、第一Api标识和第一Api秘钥生成第一校验码;
通过网关向服务器发送第一客户端请求,所述第一客户端请求包括请求参数和所述第一校验码。
第四方面,本发明公开实施例还提供一种终端请求处理装置,包括:
请求接收模块,用于接收第一客户端请求,所述第一客户端请求包括请求参数和第一校验码,所述第一校验码是客户端按照第一预设规则,利用所述请求参数、第一Api标识和第一Api秘钥生成的;
校验码生成模块,用于按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码;
校验码判断模块,用于判断所述第一校验码和所述第二校验码是否满足预设关系;
客户端请求发送模块,用于若所述第一校验码和所述第二校验码满足预设关系,则向服务端发送第二客户端请求。
第五方面,本发明公开实施例还提供一种终端请求处理装置,包括:
标识和秘钥生成模块,用于生成第二Api标识和第二Api秘钥;
标识和秘钥发送模块,用于分别向客户端和网关发送所述第二Api标识和所述第二Api秘钥。
第六方面,本发明公开实施例还提供一种终端请求处理系统,包括:
服务端,生成第三Api标识和第三Api秘钥;分别向客户端和网关发送所述第三Api标识和所述第三Api秘钥;
所述客户端,接收所述服务端发送的所述第三Api标识和所述第三Api秘钥,按照第四预设规则,利用请求参数、第三Api标识和第三Api秘钥生成第三校验码,通过网关向服务器发送第三客户端请求,所述第三客户端请求包括所述请求参数和所述第三校验码;
所述网关,接收所述服务端发送的所述第三Api标识和所述第三Api秘钥,接收所述第三客户端请求,按照第五预设规则,利用所述请求参数、所述第三Api标识和所述第三Api秘钥生成第四校验码;判断所述第三校验码和所述第四校验码是否满足预设关系;若所述第三校验码和所述第四校验码满足预设关系,则向服务端发送第四客户端请求。
本发明的实施例提供的技术方案可以具有以下有益效果:
服务端在接受客户端请求之前,网关服务会对请求参数进行处理,生成相应的校验码,如果校验码不通过则会将该请求视为非法,从而很好的保证了服务端的安全性。网关服务对请求进行校验和过滤,可以减小服务端的压力从而更好的保证了服务端的正常使用。ApiId,ApiKey以及校验码的生成规则极大的保证了服务端的安全性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本发明公开实施例所提供的一种终端请求处理方法的流程图;
图2示出了本发明公开实施例所提供的另一种终端请求处理方法的流程图;
图3示出了图2中步骤S25的流程图;
图4示出了本发明公开实施例所提供的又一种终端请求处理方法的流程图;
图5示出了本发明公开实施例所提供的再一种终端请求处理方法的流程图;
图6示出了本发明公开实施例所提供的一种终端请求处理装置的结构示意图;
图7示出了本发明公开实施例所提供的一种终端请求处理装置的结构示意图;
图8示出了本发明公开实施例所提供的一种终端请求处理系统的结构示意图;
图9示出了本发明公开实施例所提供的一种计算机设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
实施例1
如图1所示,本发明公开实施例所提供的一种终端请求处理方法的流程图,所述方法包括:
S11:接收第一客户端请求,第一客户端请求包括请求参数和第一校验码,第一校验码是客户端按照第一预设规则,利用请求参数、第一Api标识和第一Api秘钥生成的;
S12:按照第二预设规则,利用请求参数、第二Api标识和第二Api秘钥生成第二校验码;
S13:判断第一校验码和第二校验码是否满足预设关系,若第一校验码和第二校验码满足预设关系,则执行步骤S14;
S14:向服务端发送第二客户端请求。
可以理解的是,本实施例提供的技术方案,服务端在接受客户端请求之前,网关服务会对请求参数进行处理,生成相应的校验码,如果校验码不通过则会将该请求视为非法,从而很好的保证了服务端的安全性。网关服务对请求进行校验和过滤,可以减小服务端的压力从而更好的保证了服务端的正常使用。ApiId,ApiKey以及校验码的生成规则极大的保证了服务端的安全性。
实施例2
如图2所示,本发明公开实施例所提供的另一种终端请求处理方法的流程图,在具体实践中,该方法可以由网关实现,所述方法包括:
S21:接收服务端发送的第二Api标识和第二Api秘钥;
S22:接收客户端发来的第一客户端请求,第一客户端请求包括请求参数和第一校验码,第一校验码是客户端按照第一预设规则,利用请求参数、第一Api标识和第一Api秘钥生成的,第一客户端请求还包括第一Api标识和第一Api秘钥;
S23:对第一Api标识和第一Api秘钥进行校验,若第一Api标识和第一Api秘钥通过校验,则执行步骤S24;
S24:判断第一终端请求是否为静态资源访问,若第一终端请求不是静态资源访问,则执行步骤S27,若第一终端请求是静态资源访问,则执行步骤S25;
S25:按照第二预设规则,利用请求参数、第二Api标识和第二Api秘钥生成第二校验码;
S26:判断第一校验码和第二校验码是否满足预设关系,若第一校验码和第二校验码满足预设关系,则执行步骤S27;
S27:向服务端发送第二客户端请求。
在具体实践中,第二校验码=MD5((请求头参数拼接和排序结果+MD5(请求体参数拼接和排序结果))+请求URI+Api秘钥),如图3所示,步骤S25按照第二预设规则,利用请求参数、第二Api标识和第二Api秘钥生成第二校验码可以通过但不限于以下过程实现:
S251:采用第一客户端请求中的请求头、请求体以及请求URI作为标识,按照第三预设规则对该标识进行排序和拼接;
S2511:获取第一客户端请求中的请求头参数列表,该请求头参数包括请求头、请求体以及请求URI;
S2512:判断第一客户端请求是否为Get请求,若是Get请求,则执行步骤S2513,若不是Get请求,则执行步骤S2514;
S2513:将请求参数加入到请求头参数列表;
S2514:解析第一客户端请求请求体中的请求体参数;
S2515:对请求体参数进行排序和拼接;
S2516:对请求体拼接结果进行MD5加密;
S252:对请求头参数列表进行排序和拼接,生成第二校验码。
采用客户端请求中的请求头,请求体以及请求URI作为标识,对标识进行排序和拼接,再对结果进行MD5加密,极大保证了数据的安全性。
需要说明的是,本发明实施例对请求头参数的拼接和排序规则以及请求体参数的拼接和排序规则不做限定,由本领域技术人员根据实际工程需要选取实现。
在具体实践中,服务端设有标识和秘钥生成模块,标识和秘钥生成模块借助UUID(通用唯一识别码,Universally Unique Identifier)获取唯一的辨识信息生成SHA1(Secure Hash Algorithm,安全散列算法)密码上安全的报文摘要,对取得的结果做取模,拼接和截取等操作获取唯一的Api标识(ApiId)。
标识和秘钥生成模块借助引擎类MessageDigest生成SHA1密码上安全的报文摘要,对取得的结果做取模,拼接和截取等操作获取和ApiId相对应安全的Api秘钥(ApiKey)。
GET请求没有请求体,在生成校验码的过程中,将其URL后携带的请求参数解析并作为请求体参数的一部分用于拼接和加密,保证校验码的生成覆盖了所有的请求参数,避免了因部分参数的修改而造成的恶意篡改。
可以理解的是,本实施例提供的技术方案,服务端在接受客户端请求之前,网关服务会对请求参数进行处理,生成相应的校验码,如果校验码不通过则会将该请求视为非法,从而很好的保证了服务端的安全性。网关服务对请求进行校验和过滤,可以减小服务端的压力从而更好的保证了服务端的正常使用。ApiId,ApiKey以及校验码的生成规则极大的保证了服务端的安全性,客户端请求之前以相同的规则生成对应的校验码,用于服务端的校验,从而保证了校验码生成规则的安全性,进而增强服务端的可靠性。
实施例3
如图4所示,本发明实施例还提供又一种终端请求处理方法,在具体实践中,该方法可以由服务端实现,包括:
S41:生成第二Api标识和第二Api秘钥;
S42:分别向客户端和网关发送第二Api标识和第二Api秘钥。
在具体实践中,ApiId的生成借助了32位UUID,首先将其截取为四份,每一份都是8位,再将获得的8位UUID与0x3E取模,结果作为索引,从62位可打印字符数组中取值,再进行拼接,得到8位随机的ApiId,保证了ApiId的随机性和不重复性。
ApiKey的生成利用引擎类MessageDigest通过ApiId生成SHA1密码上安全的报文摘要,再遍历摘要获取每一个字节的低八位并转换为十六进制,再对获得的结果做拼接,以此获得安全的ApiKey。ApiId生成中利用62位可打印字符提高ApiId的随机性;ApiKey获取低八位转换成十六进制进行拼接。
在具体实践中,如图4中虚线部分所示,该方法还包括:
S43:接收网关发送的第二客户端请求;
S44:对第二客户端请求进行token验证,若验证通过,则执行步骤 S35,若验证不通过,则流程结束;
S45:执行第二客户端请求对应的操作。
可以理解的是,本实施例提供的技术方案,服务端在接受客户端请求之前,网关服务会对请求参数进行处理,生成相应的校验码,如果校验码不通过则会将该请求视为非法,从而很好的保证了服务端的安全性。网关服务对请求进行校验和过滤,可以减小服务端的压力从而更好的保证了服务端的正常使用。ApiId,ApiKey以及校验码的生成规则极大的保证了服务端的安全性。
实施例4
如图5所示,本发明实施例还提供再一种终端请求处理方法,在具体实践中,该方法可以由客户端实现,该方法包括:
S51:接收第一Api标识和第一Api秘钥;
S52:按照第一预设规则、利用请求参数、第一Api标识和第一Api秘钥生成第一校验码;
S53:通过网关向服务器发送第一客户端请求,第一客户端请求包括请求参数和第一校验码。
可以理解的是,本实施例提供的技术方案,服务端在接受客户端请求之前,网关服务会对请求参数进行处理,生成相应的校验码,如果校验码不通过则会将该请求视为非法,从而很好的保证了服务端的安全性。网关服务对请求进行校验和过滤,可以减小服务端的压力从而更好的保证了服务端的正常使用。ApiId,ApiKey以及校验码的生成规则极大的保证了服务端的安全性。
实施例5
如图6所示,本发明实施例还提供一种终端请求处理装置,包括:
请求接收模块61,用于接收第一客户端请求,第一客户端请求包括请求参数和第一校验码,第一校验码是客户端按照第一预设规则,利用请求参数、第一Api标识和第一Api秘钥生成的;
校验码生成模块62,用于按照第二预设规则,利用请求参数、第二Api标识和第二Api秘钥生成第二校验码;
校验码判断模块63,用于判断第一校验码和第二校验码是否满足预设关系;
客户端请求发送模块64,用于若第一校验码和第二校验码满足预设关系,则向服务端发送第二客户端请求。
可以理解的是,本实施例提供的技术方案,服务端在接受客户端请求之前,网关服务会对请求参数进行处理,生成相应的校验码,如果校验码不通过则会将该请求视为非法,从而很好的保证了服务端的安全性。网关服务对请求进行校验和过滤,可以减小服务端的压力从而更好的保证了服务端的正常使用。ApiId,ApiKey以及校验码的生成规则极大的保证了服务端的安全性。
实施例6
如图7所示,本发明实施例还提供一种终端请求处理装置,包括:
标识和秘钥生成模块71,用于生成第二Api标识和第二Api秘钥;
标识和秘钥发送模块72,用于分别向客户端和网关发送第二Api标识和第二Api秘钥。
如图7中虚线部分所示,该装置还包括:
网关请求接收模块73,用于接收网关发送的第二客户端请求;
token验证模块74,用于对第二客户端请求进行token验证;
请求执行模块75,用于若token验证模块验证通过,则执行第二客户端请求对应的操作。
可以理解的是,本实施例提供的技术方案,服务端在接受客户端请求之前,网关服务会对请求参数进行处理,生成相应的校验码,如果校验码不通过则会将该请求视为非法,从而很好的保证了服务端的安全性。网关服务对请求进行校验和过滤,可以减小服务端的压力从而更好的保证了服务端的正常使用。ApiId,ApiKey以及校验码的生成规则极大的保证了服务端的安全性。
实施例7
如图8所示,本发明实施例还提供一种终端请求处理系统,包括:
服务端81,生成第三Api标识和第三Api秘钥;分别向客户端和网关发送第三Api标识和第三Api秘钥;
客户端82,接收服务端发送的第三Api标识和第三Api秘钥,按照第四预设规则,利用请求参数、第三Api标识和第三Api秘钥生成第三校验码,通过网关向服务器发送第三客户端请求,第三客户端请求包括请求参数和第三校验码;
网关83,接收服务端发送的第三Api标识和第三Api秘钥,接收第三客户端请求,按照第五预设规则,利用请求参数、第三Api标识和第三Api秘钥生成第四校验码;判断第三校验码和第四校验码是否满足预设关系;若第三校验码和第四校验码满足预设关系,则向服务端发送第四客户端请求
可以理解的是,本实施例提供的技术方案,服务端在接受客户端请求之前,网关服务会对请求参数进行处理,生成相应的校验码,如果校验码不通过则会将该请求视为非法,从而很好的保证了服务端的安全性。网关服务对请求进行校验和过滤,可以减小服务端的压力从而更好的保证了服务端的正常使用。ApiId,ApiKey以及校验码的生成规则极大的保证了服务端的安全性。
实施例8
基于同一技术构思,本申请实施例还提供了一种计算机设备,包括存储器1和处理器2,如图9所示,所述存储器1存储有计算机程序,所述处理器2执行所述计算机程序时实现上述任一项所述的终端请求处理方法。
其中,存储器1至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器1在一些实施例中可以是OTT视频业务监控系统的内部存储单元,例如硬盘。存储器1在另一些实施例中也可以是OTT视频业务监控系统的外部存储设备,例如插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)等。进一步地,存储器1还可以既包括OTT视频业务监控系统的内部存储单元也包括外部存储设备。存储器1不仅可以用于存储安装于OTT视频业务监控系统的应用软件及各类数据,例如OTT视频业务监控程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器2在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器1中存储的程序代码或处理数据,例如执行OTT视频业务监控程序等。
可以理解的是,本实施例提供的技术方案,服务端在接受客户端请求之前,网关服务会对请求参数进行处理,生成相应的校验码,如果校验码不通过则会将该请求视为非法,从而很好的保证了服务端的安全性。网关服务对请求进行校验和过滤,可以减小服务端的压力从而更好的保证了服务端的正常使用。ApiId,ApiKey以及校验码的生成规则极大的保证了服务端的安全性。
本发明公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的终端请求处理方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本发明公开实施例所提供的终端请求处理方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行上述方法实施例中所述的终端请求处理方法的步骤,具体可参见上述方法实施例,在此不再赘述。
本发明公开实施例还提供一种计算机程序,该计算机程序被处理器执行时实现前述实施例的任意一种方法。该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software DevelopmentKit,SDK)等等。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是指至少两个。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (6)

1.一种终端请求处理方法,其特征在于,包括:
接收第一客户端请求,所述第一客户端请求包括请求参数和第一校验码,所述第一校验码是客户端按照第一预设规则,利用所述请求参数、第一Api标识和第一Api秘钥生成的;
按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码;
判断所述第一校验码和所述第二校验码是否满足预设关系;
若所述第一校验码和所述第二校验码满足预设关系,则向服务端发送第二客户端请求;
其中,所述第一Api标识和所述第二Api标识是借助32位UUID生成的8位随机的校验字段,包括:首先将32位UUID截取为四份,每一份都是8位,再将获得的8位UUID与0x3E取模,结果作为索引,从62位可打印字符数组中取值,再进行拼接;
所述按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码包括:采用所述第一客户端请求中的请求头、请求体以及请求URI作为标识,按照第三预设规则对所述标识进行排序和拼接;对拼接结果进行MD5加密;
其中,所述采用所述第一客户端请求中的请求头、请求体以及请求URI作为标识,按照第三预设规则对所述标识进行排序和拼接包括:获取所述第一客户端请求中的请求头参数,所述请求头参数包括请求头、请求体以及请求URI;判断所述第一客户端请求是否为Get请求;若所述第一客户端请求是Get请求,则将所述第一客户端请求中的请求头参数加入到请求头参数列表;若所述第一客户端请求不是Get请求,则解析第一客户端请求请求体中的请求体参数;对所述请求体参数进行排序和拼接。
2.根据权利要求1所述的终端请求处理方法,其特征在于,所述第一客户端请求还包括所述第一Api标识和所述第一Api秘钥,在所述按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码之前,所述方法还包括:
对所述第一Api标识和所述第一Api秘钥进行校验;
所述按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码为:若所述第一Api标识和所述第一Api秘钥通过校验,则按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码。
3.根据权利要求2所述的终端请求处理方法,其特征在于,在所述接收第一客户端请求之前,所述方法还包括:
接收所述第二Api标识和所述第二Api秘钥。
4.根据权利要求2所述的终端请求处理方法,其特征在于,在所述按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码之前,所述方法还包括:
判断所述第一客户端请求是否为静态资源访问;
所述按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码为:若所述第一客户端请求不是静态资源访问,则按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码;
所述向服务端发送第二客户端请求为:若所述第一客户端请求是静态资源访问,则向服务端发送第二客户端请求。
5.一种终端请求处理装置,其特征在于,包括:
请求接收模块,用于接收第一客户端请求,所述第一客户端请求包括请求参数和第一校验码,所述第一校验码是客户端按照第一预设规则,利用所述请求参数、第一Api标识和第一Api秘钥生成的;
校验码生成模块,用于按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码,所述按照第二预设规则,利用所述请求参数、第二Api标识和第二Api秘钥生成第二校验码包括:采用所述第一客户端请求中的请求头、请求体以及请求URI作为标识,按照第三预设规则对所述标识进行排序和拼接;对拼接结果进行MD5加密;其中,所述采用所述第一客户端请求中的请求头、请求体以及请求URI作为标识,按照第三预设规则对所述标识进行排序和拼接包括:获取所述第一客户端请求中的请求头参数,所述请求头参数包括请求头、请求体以及请求URI;判断所述第一客户端请求是否为Get请求;若所述第一客户端请求是Get请求,则将所述第一客户端请求中的请求头参数加入到请求头参数列表;若所述第一客户端请求不是Get请求,则解析第一客户端请求请求体中的请求体参数;对所述请求体参数进行排序和拼接;
校验码判断模块,用于判断所述第一校验码和所述第二校验码是否满足预设关系;
客户端请求发送模块,用于若所述第一校验码和所述第二校验码满足预设关系,则向服务端发送第二客户端请求;
其中,所述第一Api标识和所述第二Api标识是借助32位UUID生成的8位随机的校验字段,包括:首先将32位UUID截取为四份,每一份都是8位,再将获得的8位UUID与0x3E取模,结果作为索引,从62位可打印字符数组中取值,再进行拼接。
6.一种终端请求处理系统,其特征在于,包括:
服务端,生成第三Api标识和第三Api秘钥;分别向客户端和网关发送所述第三Api标识和所述第三Api秘钥;其中,所述第三Api标识是借助32位UUID生成的8位随机的校验字段,包括:首先将32位UUID截取为四份,每一份都是8位,再将获得的8位UUID与0x3E取模,结果作为索引,从62位可打印字符数组中取值,再进行拼接;
所述客户端,接收所述服务端发送的所述第三Api标识和所述第三Api秘钥,按照第四预设规则,利用请求参数、第三Api标识和第三Api秘钥生成第三校验码,通过网关向服务器发送第三客户端请求,所述第三客户端请求包括所述请求参数和所述第三校验码;
所述网关,接收所述服务端发送的所述第三Api标识和所述第三Api秘钥,接收所述第三客户端请求,按照第五预设规则,利用所述请求参数、所述第三Api标识和所述第三Api秘钥生成第四校验码;判断所述第三校验码和所述第四校验码是否满足预设关系;若所述第三校验码和所述第四校验码满足预设关系,则向服务端发送第四客户端请求,所述按照第五预设规则,利用所述请求参数、所述第三Api标识和所述第三Api秘钥生成第四校验码包括:采用所述第三客户端请求中的请求头、请求体以及请求URI作为标识,按照第五预设规则对所述标识进行排序和拼接;对拼接结果进行MD5加密;其中,所述采用所述第三客户端请求中的请求头、请求体以及请求URI作为标识,按照第五预设规则对所述标识进行排序和拼接包括:获取所述第三客户端请求中的请求头参数,所述请求头参数包括请求头、请求体以及请求URI;判断所述第三客户端请求是否为Get请求;若所述第三客户端请求是Get请求,则将所述第三客户端请求中的请求头参数加入到请求头参数列表;若所述第三客户端请求不是Get请求,则解析第三客户端请求请求体中的请求体参数;对所述请求体参数进行排序和拼接。
CN202210512105.XA 2022-05-12 2022-05-12 一种终端请求处理方法、装置及系统 Active CN114614996B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210512105.XA CN114614996B (zh) 2022-05-12 2022-05-12 一种终端请求处理方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210512105.XA CN114614996B (zh) 2022-05-12 2022-05-12 一种终端请求处理方法、装置及系统

Publications (2)

Publication Number Publication Date
CN114614996A CN114614996A (zh) 2022-06-10
CN114614996B true CN114614996B (zh) 2023-03-28

Family

ID=81870539

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210512105.XA Active CN114614996B (zh) 2022-05-12 2022-05-12 一种终端请求处理方法、装置及系统

Country Status (1)

Country Link
CN (1) CN114614996B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104901963A (zh) * 2015-05-28 2015-09-09 小米科技有限责任公司 代理验证方法及装置
CN110661826A (zh) * 2018-06-28 2020-01-07 北京京东尚科信息技术有限公司 代理服务器端处理网络请求的方法和代理服务器
CN111818035A (zh) * 2020-07-01 2020-10-23 上海悦易网络信息技术有限公司 一种基于api网关的权限验证的方法及设备

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2175627A1 (en) * 2008-10-09 2010-04-14 Sony Corporation Wireless transfer of data from a mobile device to a server
CN106055936B (zh) * 2016-05-18 2018-12-04 深圳大学 可执行程序数据包加密/解密方法及装置
CN107438058A (zh) * 2016-05-27 2017-12-05 北京京东尚科信息技术有限公司 用户请求的过滤方法和过滤系统
CN108400979B (zh) * 2018-02-06 2021-07-30 武汉斗鱼网络科技有限公司 应用于客户端和服务器的通信方法及电子设备
CN111865889B (zh) * 2019-12-10 2022-08-26 北京嘀嘀无限科技发展有限公司 登录请求处理方法、系统、装置、电子设备及存储介质
US10836274B1 (en) * 2020-01-13 2020-11-17 NAD Grid Corp. Methods and systems for facilitating charging sessions for electric vehicles
CN113949566A (zh) * 2021-10-15 2022-01-18 工银科技有限公司 资源访问方法、装置、电子设备和介质
CN114338033A (zh) * 2021-12-06 2022-04-12 北京达佳互联信息技术有限公司 一种请求处理方法、装置、设备及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104901963A (zh) * 2015-05-28 2015-09-09 小米科技有限责任公司 代理验证方法及装置
CN110661826A (zh) * 2018-06-28 2020-01-07 北京京东尚科信息技术有限公司 代理服务器端处理网络请求的方法和代理服务器
CN111818035A (zh) * 2020-07-01 2020-10-23 上海悦易网络信息技术有限公司 一种基于api网关的权限验证的方法及设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
曹斌,张霞,刘积仁.Open BASE Web应用服务器中的在线事务处理.东北大学学报(自然科学版).1999,(第04期),全文. *

Also Published As

Publication number Publication date
CN114614996A (zh) 2022-06-10

Similar Documents

Publication Publication Date Title
CN109194625B (zh) 一种基于云端服务器的客户端应用保护方法、装置及存储介质
CN108683502B (zh) 一种数字签名验证方法、介质及设备
CN106911684B (zh) 一种鉴权方法及系统
CN109831311B (zh) 一种服务器验证方法、系统、用户终端及可读存储介质
CN114614994B (zh) Api接口数据的通信方法、装置、客户端及存储介质
CN111901124B (zh) 一种通信安全防护方法、装置及电子设备
KR20170089352A (ko) 가상화 시스템에서 수행하는 무결성 검증 방법
CN113610526A (zh) 一种数据信任方法、装置、电子设备及存储介质
EP1848144A2 (en) Data processing device and control method thereof
CN113225351A (zh) 一种请求处理方法、装置、存储介质及电子设备
CN112699374A (zh) 一种完整性校验漏洞安全防护的方法及系统
CN111585995A (zh) 安全风控信息传输、处理方法、装置、计算机设备及存储介质
CN110890979B (zh) 堡垒机自动部署方法、装置、设备及介质
CN114830572A (zh) 一种数据传输方法、装置、设备、系统及存储介质
CN114614996B (zh) 一种终端请求处理方法、装置及系统
CN115550060A (zh) 基于区块链的可信证书验证方法、装置、设备和介质
CN115563588A (zh) 一种软件离线鉴权的方法、装置、电子设备和存储介质
CN114531246A (zh) 数据下载方法及装置
CN114168909A (zh) 基于代码签名的程序保护方法、装置、设备和存储介质
CN111324914B (zh) 文件的传输方法、装置、服务器、设备和介质
CN113395161A (zh) 验证方法、装置、电子设备及存储介质
CN114650175B (zh) 一种验证方法及装置
CN112910883B (zh) 数据传输方法、装置及电子设备
CN111294326B (zh) 确认系统数据安全的方法、装置、设备和介质
CN115378644A (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
GR01 Patent grant
GR01 Patent grant