CN107196950B - 校验方法、装置及服务端 - Google Patents

校验方法、装置及服务端 Download PDF

Info

Publication number
CN107196950B
CN107196950B CN201710439302.2A CN201710439302A CN107196950B CN 107196950 B CN107196950 B CN 107196950B CN 201710439302 A CN201710439302 A CN 201710439302A CN 107196950 B CN107196950 B CN 107196950B
Authority
CN
China
Prior art keywords
verification
session
information
network request
client
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
CN201710439302.2A
Other languages
English (en)
Other versions
CN107196950A (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.)
Guangzhou Baodian Digital Technology Co ltd
Original Assignee
Wuhan Douyu Network 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 Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Priority to CN201710439302.2A priority Critical patent/CN107196950B/zh
Publication of CN107196950A publication Critical patent/CN107196950A/zh
Priority to PCT/CN2018/082350 priority patent/WO2018228036A1/zh
Application granted granted Critical
Publication of CN107196950B publication Critical patent/CN107196950B/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
    • 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
    • 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/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations

Abstract

本发明提供一种校验方法、装置及服务端,方法及装置应用于与客户端通信的服务端。方法包括:在客户端发送的登录请求验证通过后,根据所述登录请求生成校验信息;将所述校验信息发送至所述客户端;接收所述客户端发送的携带有所述校验信息的网络请求;根据接收到的网络请求中携带的校验信息对该网络请求进行校验,并在校验通过时调用该网络请求申明调用的接口。如此,可以不必根据业务接口类型的变化而更改校验方式,大大提高了开发的便捷性。

Description

校验方法、装置及服务端
技术领域
本发明涉及身份校验技术领域,具体而言,涉及一种校验方法、装置及服务端。
背景技术
在用户登录成功之后,为了避免恶意构造的非法请求访问,服务端还需要对客户端发送的网络请求进行校验。现有的校验方法大多站在服务端开发的角度去实现,为前端开发带来许多不便。随着业务接口类型的变化,所使用的校验方式也需要随之改变,进而需要对前端项目的业务架构进行调整以适应新的校验方式,工作量巨大,开发效率低。
发明内容
有鉴于此,本发明的目的在于提供一种校验方法、装置及服务端,以改善上述问题。
为了达到上述目的,本发明实施例提供一种校验方法,应用于与客户端通信的服务端,所述方法包括:
在客户端发送的登录请求验证通过后,根据所述登录请求生成校验信息;
将所述校验信息发送至所述客户端;
接收所述客户端发送的携带有所述校验信息的网络请求;
根据接收到的网络请求中携带的所述校验信息对该网络请求进行校验,并在校验通过时调用该网络请求申明调用的接口。
可选地,在客户端发送的登录请求验证通过后,根据所述登录请求生成校验信息的步骤,包括:
在客户端发送的登录请求验证通过后,生成一个会话;
将所述登录请求中携带的用户信息与所述会话的会话ID关联,并将关联后的所述用户信息与会话ID进行存储;
根据所述会话ID与所述登录请求中携带的第一参数信息生成令牌,所述校验信息包括所述令牌。
可选地,所述服务端中存储有非关系型数据库;将所述登录请求中携带的用户信息与所述会话的会话ID关联,并将关联后的所述用户信息与会话ID存储的步骤,包括:
以所述会话ID为键,以所述登录请求中携带的用户信息为值,形成一键-值对;
将所述键-值对存放至所述非关系型数据库。
可选地,根据接收到的网络请求中携带的所述校验信息对该网络请求进行校验的步骤,包括:
解析接收到的网络请求中携带的所述令牌,得到所述会话ID及所述第一参数信息;
查找出与所述会话ID关联的用户信息,并在查找出的所述用户信息未过期时确定所述网络请求校验通过,和/或,获取所述网络请求中携带的第二参数信息,判断所述第二参数信息与解析得到的第一参数信息是否相同,并在所述第二参数信息与所述第一参数信息相同时,确定所述网络请求校验通过。
可选地,所述校验信息还包括所述会话ID;将所述校验信息发送至所述客户端的步骤,包括:
生成一个cookie信息,并将所述会话ID存入所述cookie信息,所述cookie信息的有效期限为与所述会话ID关联的用户信息的有效期限;
将所述cookie信息发送至所述客户端,使所述客户端在所述cookie信息未过期时将所述cookie信息中的会话ID存放至网络请求中。
可选地,根据接收到的网络请求中携带的所述校验信息对该网络请求进行校验的步骤,包括:
检测接收到的网络请求中是否携带有所述会话ID;
若所述网络请求中携带有所述会话ID,则查找出与所述会话ID关联的用户信息,并在所述用户信息未过期时确定该网络请求校验通过;
若所述网络请求中未携带所述会话ID,则解析所述网络请求中携带的所述令牌,得到所述会话ID及所述第一参数信息;
查找出与所述会话ID关联的用户信息,并在查找出的所述用户信息未过期时确定所述网络请求校验通过,和/或,获取所述网络请求中携带的第二参数信息,判断所述第二参数信息与解析得到的第一参数信息是否相同,并在所述第二参数信息与所述第一参数信息确定所述网络请求校验通过。
本发明另一实施例还提供一种校验装置,应用于与客户端通信的服务端,所述装置包括:
校验信息生成模块,用于在客户端发送的登录请求验证通过后,根据所述登录请求生成校验信息;
校验信息发送模块,用于将所述校验信息发送至所述客户端;
接收模块,用于接收所述客户端发送的携带有所述校验信息的网络请求;
校验模块,用于根据接收到的网络请求中携带的所述校验信息对该网络请求进行校验,并在校验通过时调用该网络请求申明调用的接口。
可选地,所述校验信息包括令牌;所述校验信息生成模块在客户端发送的登录请求验证通过后,根据所述登录请求生成校验信息的方式,包括:
在客户端发送的登录请求验证通过后,生成一个会话;
将所述登录请求中携带的用户信息与所述会话的会话ID关联,并将关联后的所述用户信息与会话ID存储;
根据所述会话ID与所述登录请求中携带的第一参数信息生成所述令牌。
可选地,所述校验模块根据接收到的网络请求中携带的所述校验信息对该网络请求进行校验的方式,包括:
解析接收到的网络请求中携带的所述令牌,得到所述会话ID及所述第一参数信息;
查找出与所述会话ID关联的用户信息,并在查找出的所述用户信息未过期时确定所述网络请求校验通过,和/或,获取所述网络请求中携带的第二参数信息,判断所述第二参数信息与解析得到的第一参数信息是否相同,并在所述第二参数信息与所述第一参数信息相同时,确定所述网络请求校验通过。
本发明另一实施例还提供一种服务端,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本发明提供的校验方法。
本发明实施例提供的校验方法、装置及服务端,用于校验客户端在用户登录成功后发起的网络请求,进而实现对该用户的身份校验。服务端在客户端发送的登录请求验证通过后,根据登录请求生成校验信息发送至客户端。服务端接收客户端在登录请求验证通过后发送的携带有校验信息的网络请求,根据该校验信息对接收到的网络请求进行校验,并在校验通过时调用该网络请求申明调用的接口。如此,只需针对需要进行校验的请求接口应用本发明提供的校验方法及装置,不必根据接口的类型对前端进行调整,大大降低了开发人员的工作量,提高了开发效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的一种服务端与客户端的交互示意图。
图2为本发明实施例提供的一种服务端的方框示意图。
图3为本发明实施例提供的一种校验方法的流程示意图。
图4为图3所示步骤S101的子步骤示意图。
图5为本发明实施例提供的一种校验装置的功能模块框图。
图标:100-服务端;110-校验装置;111-校验信息生成模块;112-校验信息发送模块;113-接收模块;114-校验模块;120-存储器;130-处理器;140-通信单元;200-客户端;300-网络。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
如图1所示,是本发明较佳实施例提供的一种服务端100与客户端200的交互示意图。其中,客户端200可以为多个(图1中示出一个)。服务端100可通过网络300与客户端200通信,以进行数据通信或交互。
在本发明实施例中,客户端200可以为移动终端设备,例如,智能手机、平板电脑、穿戴式移动终端等。其中,客户端200中安装有应用程序(APP),与服务端100相对应,为用户提供服务。用户可通过客户端200中安装的应用程序访问服务端100。
作为一种实施方式,所述应用程序可以为浏览器,所述服务端100可以为web服务器。
如图2所示,是本发明较佳实施例提供的一种服务端100的方框示意图。所述服务端100包括校验装置110、存储器120、处理器130及通信单元140。
所述存储器120、处理器130及通信单元140各元件相互之间接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述校验装置110包括至少一个可以软件或固件(firmware)形式存储于存储器120中或固化在客户端200的操作系统(operating system,OS)中的软件功能模块。
其中,所述存储器120可以是,但不限于,随机存取存储器(Random AccessMemory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(ProgrammableRead-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-OnlyMemory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-OnlyMemory,EEPROM)等。
所述处理器130可以是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(DSP))、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述通信单元140用于通过网络300建立服务端100与客户端200之间的通信连接。
应当理解,图2所示的结构仅为示意。服务端100还可以包括比图2所示更多或者更少的组件,或者具有与图2所示不同的配置。其中,图2所示的各组件可以软件、硬件或其组合实现。
如图3所示,是本发明实施例提供的一种应用于图2所示服务端100的校验方法的流程示意图。下面将对图3所示流程及具体步骤进行详细阐述。
步骤S101,在客户端200发送的登录请求验证通过后,根据所述登录请求生成校验信息。
本发明提供的校验方法用于对客户端200发送的登录请求验证通过后发起的网络请求进行验证。
实施时,用户可在客户端200输入用户信息(如,用户名和用户密码)并确认登录后,客户端200发送包括所述用户信息的登录请求至服务端100。服务端100接收到所述登录请求并验证所述登录请求中携带的用户信息,当验证通过时确认该用户登录成功。此时,服务端100记录登录请求中携带的用户信息,并生成一校验信息返回客户端200,使得所述客户端200下次可通过携带有所述校验信息的网络请求来访问所述服务端100。如此,服务端100可通过所述校验信息来校验接收到的网络请求。
需要说明的是,本实施例中,所述登录请求可以是该用户首次通过客户端200登录时发出的登录请求,也可以是服务端100中记录的用户信息过期后,用户首次通过客户端200登录时发出的登录请求。
在本实施例中,所述服务端100包括可供客户端200登录的登录接口。所述登录接口用于接收客户端200发送的登录请求进行验证,并在验证通过时,生成所述校验信息发送至所述客户端200。
可选地,所述校验信息可以有多种。例如,所述校验信息可以包括令牌(token)。在这一情形下,如图4所示,步骤S101可以包括步骤S201、步骤S202以及步骤S203三个子步骤。
步骤S201,在客户端200发送的登录请求验证通过后,生成一个会话(session)。
其中,所述会话通过express-session生成,所述会话具有一会话ID(sessionid)。
步骤S202,将所述登录请求中携带的用户信息与所述会话的会话ID关联,并将关联后的所述用户信息与会话ID存储。
在本实施例中,所述服务端100可以通过nodejs技术与非关系型数据库redis配合搭建而成,所述服务端100可通过所述非关系型数据库redis缓存和查询数据。
因而,可选地,在本实施例中,步骤S202可通过如下步骤实现。
以所述会话ID为键,以所述登录请求中携带的用户信息为值,形成一键-值对,并将所述键-值对存放至所述非关系型数据库redis中。
步骤S203,根据所述会话ID与所述登录请求中携带的第一参数信息生成所述令牌。
其中,所述第一参数信息可以包括,但不限于,用户访问IP、应用程序信息(如,浏览器信息)等。作为一种实施方式,服务端100可以采用JWT(Json Web Tokens)方式生成所述令牌。详细地,服务端100可以将所述第一参数信息作为createtoken方法的参数,利用JWT临时令牌生成算法生成所述令牌。相较于传统的时效性token,安全性更高,附加操作更少。
又例如,所述会话ID也可直接作为所述校验信息,此时,所述校验信息包括所述令牌及所述会话ID。
步骤S102,将所述校验信息发送至所述客户端200。
在本实施例中,针对不同的校验信息,客户端200的发送方式有所不同。
例如,针对所述令牌,所述服务端100可直接将所述令牌返回所述客户端200。又例如,针对所述会话ID,所述服务端100可在所述登录请求验证通过后,生成一个cookie信息,并将所述会话ID存放至所述cookie信息。所述服务端100将所述cookie信息发送至所述客户端200,使所述客户端200将所述cookie信息中的会话ID存放至网络请求中。
其中,所述cookie信息中包括所述cookie信息的有效期限,所述cookie信息的有效期限为与所述会话ID关联的用户信息的有效期限。如此,当所述用户信息过期时,所述cookie信息也会过期,客户端200也就无法提取出所述会话ID并存放至网络请求中,换言之,服务端100将无法从接收到的网络请求中检测到会话ID。
步骤S103,接收所述客户端200发送的携带有所述校验信息的网络请求。
本实施例中,所述校验方法用于对客户端200在所述登录请求验证通过后发送的所有网络请求进行校验。因而,服务端100接收到的网络请求,是指,所述客户端200在所述登录请求验证通过后发送的所有网络请求。并且,每个所述网络请求中携带有所述校验信息。
在本实施例中,网络请求可以是HTTP请求,HTTP请求头中的信息会在每个HTTP请求中自动发送至服务端100。因而,若所述校验信息包括所述令牌,所述客户端200在接收到所述令牌后,将所述令牌插入所述HTTP请求的请求头中。如此,所述客户端200发出的每一个HTTP请求中都携带有所述令牌,而不必在每次发送HTTP请求时将所述令牌作为请求参数一并提交。
若所述校验信息包括所述会话ID,则所述客户端200在接收到所述cookie信息后将所述cookie信息中存放的所述会话ID作为所述HTTP请求的参数一并发送至所述服务端100。如此,当所述cookie信息过期时,所述HTTP请求中不存在所述会话ID。
步骤S104,根据接收到的网络请求中携带的校验信息对该网络请求进行校验,并在校验通过时调用该网络请求申明调用的接口。
在本实施例中,所述服务端100中还包括多个可供客户端200访问的请求接口。客户端200发送至服务端100的网络请求中通常申明有要访问的请求接口,若该请求接口为需要对已成功登录的用户的身份进行校验的接口,则可在该请求接口的回调指令之前,根据接收到的网络请求中携带的校验信息对该网络请求进行校验。当校验通过时,再执行该请求接口中的回调指令。
若该请求接口为不需要对已成功登录的用户的身份进行校验的接口,则可以直接执行该请求接口中的回调指令。
如此,所有类型的接口都可通过本发明提供的校验方法对已登录用户的身份进行校验,而不必根据请求接口的类型调整前端架构,大大降低了前端开发的工作量。
在本实施例中,由于所述校验信息可以有多种,对应的校验方式也可以有多种。作为一种实施方式,若所述校验信息包括令牌,步骤S104可通过如下步骤实现。
首先,解析接收到的网络请求中携带的所述令牌,得到所述会话ID及所述第一参数信息。
对于客户端200在用户登录成功后发送的每一个网络请求,服务端100从该网络请求的请求头中查找出所述令牌进行解析。解析所述令牌的方法与生成所述令牌的方法相匹配,例如,若所述令牌采用JWT加密算法生成,也应当采用对应的JWT解密算法进行解密。由于所述令牌根据所述会话ID及所述第一参数信息生成,因而,解析所述令牌也会得到所述会话ID及所述第一参数信息。
然后,查找出与所述会话ID关联的用户信息,并在查找出的所述用户信息未过期时确定所述网络请求校验通过,或者,获取所述网络请求中携带的第二参数信息,判断所述第二参数信息与解析得到的第一参数信息是否相同,并在所述第二参数信息与所述第一参数信息相同时,确定所述网络请求校验通过。
根据实际情况,所述客户端200在所述登录请求验证通过后发送的网络请求中携带有与所述第一参数信息所包括的参数类型相同的第二参数信息。因而,在校验时,可根据所述令牌得到所述第一参数信息,进而将所述第一参数信息与所述第二参数信息进行对比,从而对用户的身份进行校验。例如,所述第一参数信息中包括用户访问IP和浏览器信息,第二参数信息中也包括当前用户的用户访问IP和浏览器信息。
此外,服务端100也可根据接收到的网络请求中携带的令牌得到所述会话ID,并通过所述会话ID在所述非关系型数据库redis中读取该用户登录时所用的用户信息,进而根据所述用户信息对所述网络请求进行校验。若读取到的用户信息未过期,则确定所述网络请求校验通过,可响应所述网络请求。
在本实施例中,针对所述校验信息包括所述令牌的情形,所述服务端100可选取上述两种校验方式中的至少一种对接收到的网络请求进行校验。
可选地,作为另一种实施方式,若除所述令牌之外,所述校验信息还包括所述会话ID,则所述步骤S104可以通过如下步骤实现。
首先,检测接收到的网络请求中是否携带有所述会话ID,若所述网络请求中携带有所述会话ID,则查找出与所述会话ID关联的用户信息,并在所述用户信息未过期时确定所述网络请求校验通过。
在本实施例中,若cookie信息过期,则所述客户端200发送至所述服务端100的网络请求中不存在所述会话ID。
然后,若所述网络请求中未携带所述会话ID,则解析所述网络请求中携带的令牌,得到所述会话ID及所述第一参数信息。
查找出与所述会话ID关联的用户信息,并在查找出的所述用户信息未过期时确定所述网络请求校验通过,和/或,获取所述网络请求中携带的第二参数信息,判断所述第二参数信息与解析得到的第一参数信息是否相同,并在所述第二参数信息与所述第一参数信息确定所述网络请求校验通过。
在本实施例中,当所述校验信息还包括所述会话ID时,所述服务端100可先检测接收到的网络请求中是否包括所述会话ID,在接收到的网络请求中不包括所述会话ID时,再通过所述令牌对所述用户的身份进行校验。
由此可见,相较于现有技术,本发明提供的校验方法不受服务端100提供的请求接口类型的限制,可根据实际需求灵活调整校验方式。
如图5所示,本发明较佳实施例还提供一种校验装置110,所述校验装置110应用于与客户端200通信的服务端100。所述校验装置110包括校验信息生成模块111、校验信息发送模块112、接收模块113以及校验模块114。
其中,所述校验信息生成模块111用于在客户端200发送的登录请求验证通过后,根据所述登录请求生成校验信息。
在本实施例中,关于所述校验信息生成模块111的描述具体可参考对图3所示步骤S101的详细描述。也即,所述步骤S101可由所述校验信息生成模块111执行。
可选地,所述校验信息可包括令牌。在这一情形下,所述校验信息生成模块111可通过如下方式在用户通过客户端200登录成功后,根据所述客户端200请求该次登录的登录请求中所携带的信息生成校验信息。
在客户端200发送的登录请求验证通过后,生成一个会话。
将所述登录请求中携带的用户信息与所述会话的会话ID关联,并将关联后的所述用户信息与会话ID存储。
根据所述会话ID与所述登录请求中携带的第一参数信息生成所述令牌。
所述校验信息发送模块112用于将所述校验信息发送至所述客户端200。在本实施例中,关于所述校验信息发送模块112的描述具体可参考对图3所示步骤S102的详细描述,也即,所述步骤S102可由所述校验信息发送模块112执行。
所述接收模块113用于接收所述客户端200发送的携带有所述校验信息的网络请求。
在本实施例中,关于所述接收模块113的描述具体可参考对图3所示步骤S103的详细描述,也即,所述步骤S103可由所述接收模块113执行。
所述校验模块114用于根据接收到的网络请求中携带的校验信息对该网络请求进行校验,并在校验通过时调用该网络请求申明调用的接口。
在本实施例中,关于所述校验模块114的描述具体可参考对图3所示步骤S104的详细描述。也即,所述步骤S104可由所述校验模块114执行。
可选地,所述校验模块114可通过如下方式根据所述网络请求中携带的校验信息对所述网络请求的身份信息进行校验。
解析接收到的网络请求中携带的令牌,得到所述会话ID及所述第一参数信息。
查找出与所述会话ID关联的用户信息,并在查找出的所述用户信息未过期时确定所述网络请求校验通过,和/或,获取所述网络请求中携带的第二参数信息,判断所述第二参数信息与解析得到的第一参数信息是否相同,并在所述第二参数信息与所述第一参数信息相同时,确定所述网络请求校验通过。
综上所述,本发明实施例提供的校验方法、装置及服务端100,用于校验客户端200在用户登录成功后发起的网络请求,进而实现对该用户的身份校验。服务端100在用户通过客户端200登录成功后,根据登录请求中携带的信息生成校验信息发送至客户端200。服务端100接收客户端200在用户登录成功后发送的携带有该校验信息的网络请求,并在网络请求所访问的请求接口回调之前,根据网络请求中携带的该校验信息对用户的身份进行校验。如此,只需在需要进行校验的请求接口中应用本发明提供的校验方法及装置,不必根据接口的类型对前端进行调整,大大降低了开发人员的工作量,提高了开发效率。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种校验方法,其特征在于,应用于与客户端通信的服务端,所述方法包括:
在客户端发送的登录请求验证通过后,生成一个会话,将网络请求中携带的用户信息与所述会话的会话ID关联,并将关联后的所述用户信息与会话ID进行存储;
根据所述会话ID与所述登录请求中携带的第一参数信息生成令牌,得到包括所述令牌和所述会话ID的校验信息;将所述校验信息发送至所述客户端;
接收所述客户端发送的携带有所述校验信息的网络请求;
检测接收到的网络请求是否携带有会话ID;
若所述网络请求中携带有所述会话ID,则查找出与所述会话ID关联的用户信息,并在所述用户信息过期时确定该网络请求校验通过;
若所述网络请求中未携带所述会话ID,则解析所述网络请求中携带的所述令牌,得到所述会话ID及所述第一参数信息;查找出与所述会话ID关联的用户信息,并在查找出的所述用户信息未过期时确定所述网络请求校验通过,和/或,获取所述网络请求中携带的第二参数信息,判断所述第二参数信息与解析得到的第一参数信息是否相同,并在所述第二参数信息与所述第一参数信息相同时,确定所述网络请求校验通过;
在校验通过时调用所述网络请求申明调用的接口。
2.根据权利要求1所述的校验方法,其特征在于,所述服务端中存储有非关系型数据库;将所述登录请求中携带的用户信息与所述会话的会话ID关联,并将关联后的所述用户信息与会话ID存储的步骤,包括:
以所述会话ID为键,以所述登录请求中携带的用户信息为值,形成一键-值对;
将所述键-值对存放至所述非关系型数据库。
3.根据权利要求1或2所述的校验方法,其特征在于,根据接收到的网络请求中携带的所述校验信息对该网络请求进行校验的步骤,包括:
解析接收到的网络请求中携带的所述令牌,得到所述会话ID及所述第一参数信息;
查找出与所述会话ID关联的用户信息,并在查找出的所述用户信息未过期时确定所述网络请求校验通过,和/或,获取所述网络请求中携带的第二参数信息,判断所述第二参数信息与解析得到的第一参数信息是否相同,并在所述第二参数信息与所述第一参数信息相同时,确定所述网络请求校验通过。
4.根据权利要求1或2所述的校验方法,其特征在于,所述校验信息还包括所述会话ID;将所述校验信息发送至所述客户端的步骤,包括:
生成一个cookie信息,并将所述会话ID存入所述cookie信息,所述cookie信息的有效期限为与所述会话ID关联的用户信息的有效期限;
将所述cookie信息发送至所述客户端,使所述客户端在所述cookie信息未过期时将所述cookie信息中的会话ID存放至网络请求中。
5.一种校验装置,其特征在于,应用于与客户端通信的服务端,所述装置包括:
校验信息生成模块,用于在客户端发送的登录请求验证通过后,生成一个会话,将网络请求中携带的用户信息与所述会话的会话ID关联,并将关联后的所述用户信息与会话ID进行存储;根据所述会话ID与所述登录请求中携带的第一参数信息生成令牌,得到包括所述令牌和所述会话ID的校验信息;
校验信息发送模块,用于将所述校验信息发送至所述客户端;
接收模块,用于接收所述客户端发送的携带有所述校验信息的网络请求;
校验模块,用于根据接收到的网络请求中携带的所述校验信息对该网络请求进行校验,并在校验通过时调用该网络请求申明调用的接口;
其中,所述校验模块根据接收到的网络请求中携带的所述校验信息对该网络请求进行校验的具体方式,为:
检测接收到的网络请求是否携带有会话ID;
若所述网络请求中携带有所述会话ID,则查找出与所述会话ID关联的用户信息,并在所述用户信息过期时确定该网络请求校验通过;
若所述网络请求中未携带所述会话ID,则解析所述网络请求中携带的所述令牌,得到所述会话ID及所述第一参数信息;查找出与所述会话ID关联的用户信息,并在查找出的所述用户信息未过期时确定所述网络请求校验通过,和/或,获取所述网络请求中携带的第二参数信息,判断所述第二参数信息与解析得到的第一参数信息是否相同,并在所述第二参数信息与所述第一参数信息相同时,确定所述网络请求校验通过。
6.根据权利要求5所述的校验装置,其特征在于,所述校验模块根据接收到的网络请求中携带的所述校验信息对该网络请求进行校验的方式,包括:
解析接收到的网络请求中携带的所述令牌,得到所述会话ID及所述第一参数信息;
查找出与所述会话ID关联的用户信息,并在查找出的所述用户信息未过期时确定所述网络请求校验通过,和/或,获取所述网络请求中携带的第二参数信息,判断所述第二参数信息与解析得到的第一参数信息是否相同,并在所述第二参数信息与所述第一参数信息相同时,确定所述网络请求校验通过。
7.一种服务端,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1~4任一项所述方法的步骤。
CN201710439302.2A 2017-06-12 2017-06-12 校验方法、装置及服务端 Active CN107196950B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201710439302.2A CN107196950B (zh) 2017-06-12 2017-06-12 校验方法、装置及服务端
PCT/CN2018/082350 WO2018228036A1 (zh) 2017-06-12 2018-04-09 校验方法、装置、服务端及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710439302.2A CN107196950B (zh) 2017-06-12 2017-06-12 校验方法、装置及服务端

Publications (2)

Publication Number Publication Date
CN107196950A CN107196950A (zh) 2017-09-22
CN107196950B true CN107196950B (zh) 2020-06-16

Family

ID=59876460

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710439302.2A Active CN107196950B (zh) 2017-06-12 2017-06-12 校验方法、装置及服务端

Country Status (2)

Country Link
CN (1) CN107196950B (zh)
WO (1) WO2018228036A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107196950B (zh) * 2017-06-12 2020-06-16 武汉斗鱼网络科技有限公司 校验方法、装置及服务端
CN109756337B (zh) * 2017-11-06 2022-01-07 北京京东尚科信息技术有限公司 一种服务接口的安全接入方法和装置
CN108462581B (zh) * 2018-01-08 2020-09-04 平安科技(深圳)有限公司 网络令牌生成的方法、装置、终端设备及存储介质
CN108900557B (zh) * 2018-09-12 2023-09-22 国际商业机器(中国)投资有限公司 登录方法及系统
CN110535851A (zh) * 2019-08-27 2019-12-03 浪潮云信息技术有限公司 一种基于oauth2协议的用户认证系统
CN110718219B (zh) * 2019-09-12 2022-07-22 百度在线网络技术(北京)有限公司 一种语音处理方法、装置、设备和计算机存储介质
CN110718218B (zh) * 2019-09-12 2022-08-23 百度在线网络技术(北京)有限公司 一种语音处理方法、装置、设备和计算机存储介质
CN110719285A (zh) * 2019-10-11 2020-01-21 永诚恒易网络科技股份有限公司 一种基于http协议的token的封装方法
CN111132076B (zh) * 2019-12-31 2024-04-09 斑马网络技术有限公司 车机通信方法、装置、车机及终端
CN111314362B (zh) * 2020-02-23 2022-02-18 湖南警察学院 一种银行安保系统的网络安全验证方法及系统
CN111404804A (zh) * 2020-03-10 2020-07-10 安徽以萨数据技术有限公司 基于Swoole的即时通讯系统、方法、终端及介质
CN114615459A (zh) * 2022-05-10 2022-06-10 全时云商务服务股份有限公司 一种视频会议入会方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103944900A (zh) * 2014-04-18 2014-07-23 中国科学院计算技术研究所 一种基于加密的跨站请求攻击防范方法及其装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7225464B2 (en) * 2002-04-03 2007-05-29 Yodlee.Com, Inc. Method for verifying the identity of a user for session authentication purposes during Web navigation
CN106302346A (zh) * 2015-05-27 2017-01-04 阿里巴巴集团控股有限公司 Api调用的安全认证方法、装置、系统
CN106453661A (zh) * 2016-12-09 2017-02-22 北京酷我科技有限公司 一种http服务器集群的会话管理方法
CN107196950B (zh) * 2017-06-12 2020-06-16 武汉斗鱼网络科技有限公司 校验方法、装置及服务端

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103944900A (zh) * 2014-04-18 2014-07-23 中国科学院计算技术研究所 一种基于加密的跨站请求攻击防范方法及其装置

Also Published As

Publication number Publication date
CN107196950A (zh) 2017-09-22
WO2018228036A1 (zh) 2018-12-20

Similar Documents

Publication Publication Date Title
CN107196950B (zh) 校验方法、装置及服务端
CN110602052B (zh) 微服务处理方法及服务器
CN111556006B (zh) 第三方应用系统登录方法、装置、终端及sso服务平台
CN106101258B (zh) 一种混合云的接口调用方法、装置及系统
EP2748781B1 (en) Multi-factor identity fingerprinting with user behavior
CN103023918B (zh) 为多个网络服务统一提供登录的方法、系统和装置
US20180234464A1 (en) Brokered authentication with risk sharing
US20130297513A1 (en) Multi factor user authentication
KR20170129866A (ko) 블록 체인을 사용하여 디바이스 무결성의 자동화된 입증
CN110232265B (zh) 双重身份认证方法、装置及系统
CN110365684B (zh) 应用集群的访问控制方法、装置和电子设备
CN112491776B (zh) 安全认证方法及相关设备
CN110708335A (zh) 访问认证方法、装置及终端设备
CN109842616B (zh) 账号绑定方法、装置及服务器
CN112187465B (zh) 无感登录方法、装置、计算机设备和存储介质
WO2021078062A1 (zh) Ssl证书校验方法、装置、设备及计算机存储介质
CN111371811B (zh) 一种资源调用方法、资源调用装置、客户端及业务服务器
CN112565239B (zh) 整合多运营商的认证方法、装置、计算机设备及存储介质
CN107679865B (zh) 一种基于触压面积的身份验证方法和装置
CN110677423A (zh) 基于客户代理端的数据采集方法、装置、及计算机设备
CN114201740A (zh) 登录方法、装置、电子设备及存储介质
CN106533685B (zh) 身份认证方法、装置及系统
CN111917767B (zh) 一种客户端的请求认证方法、装置、设备及存储介质
CN111652625A (zh) 认证方法及装置、电子设备、计算机可读存储介质
CN114553570B (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
TR01 Transfer of patent right

Effective date of registration: 20230705

Address after: 510000 E18 Xingli animation and game Industrial Park, 143 Yingxing East Road, Donghuan street, Panyu District, Guangzhou City, Guangdong Province

Patentee after: Guangzhou Baodian Digital Technology Co.,Ltd.

Address before: 430000 East Lake Development Zone, Wuhan City, Hubei Province, No. 1 Software Park East Road 4.1 Phase B1 Building 11 Building

Patentee before: WUHAN DOUYU NETWORK TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right