CN115208648B - 一种登录令牌生成方法、装置、电子设备及存储介质 - Google Patents
一种登录令牌生成方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115208648B CN115208648B CN202210792124.2A CN202210792124A CN115208648B CN 115208648 B CN115208648 B CN 115208648B CN 202210792124 A CN202210792124 A CN 202210792124A CN 115208648 B CN115208648 B CN 115208648B
- Authority
- CN
- China
- Prior art keywords
- login
- user
- token
- data table
- login token
- 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
Links
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/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- 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/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/102—Entity profiles
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请提供了一种登录令牌生成方法、装置、电子设备及存储介质,属于互联网技术领域,该方法包括:在用户成功登录服务端后获取用户的用户标识及登录时间;判断在令牌数据表中是否存在与用户标识对应的第一登录令牌;若存在从用户信息数据表中获取第一登录令牌对应的第一设备标识;在第一设备标识与第二设备标识不相同时将第一用户信息中的用户状态设置为无效;对用户标识及登录时间进行加密生成第二登录令牌,在令牌数据表中对应存储第二登录令牌,在用户信息数据表对应存储第二设备标识及第二用户信息。通过采用上述登录令牌生成方法、装置、电子设备及存储介质,解决了无法及时从认证组件或认证服务中获取用户信息及服务器资源消耗大的问题。
Description
技术领域
本申请涉及互联网技术领域,具体而言,涉及一种登录令牌生成方法、装置、电子设备及存储介质。
背景技术
当用户通过客户端向服务端请求数据时,需要对用户的登录名和登录密码进行验证,同时,为了减轻服务器的压力,避免频繁地访问数据库,通常还需要对客户端发起的访问请求进行令牌认证,只有通过令牌认证后才允许客户端访问服务器,现有技术中,通常是在服务器上集成认证组件或者认证服务来为用户提供令牌(token)生成、令牌认证服务的。
上述在服务器上执行令牌生成、令牌认证的方式,一方面,集成在服务器上的认证组件或者认证服务与登录服务是分离的,导致无法及时从服务器的认证组件或者认证服务中获取用户信息;第二方面,服务器的资源消耗大。
发明内容
有鉴于此,本申请的目的在于提供一种登录令牌生成方法、装置、电子设备及存储介质,解决了无法及时从服务器的认证组件或者认证服务中获取用户信息、以及服务器资源消耗大的问题。
第一方面,本申请实施例提供了一种登录令牌生成方法,包括:
在用户成功登录服务端后,获取用户的用户标识及登录时间;
判断在令牌数据表中是否存在与用户标识对应的第一登录令牌;
若存在对应的第一登录令牌,从用户信息数据表中获取第一登录令牌对应的第一设备标识,其中,用户信息数据表中记录有最近一次通过第一登录令牌成功登录的设备的第一设备标识、第一登录令牌以及第一用户信息之间的对应关系;
在第一设备标识与本次登录设备的第二设备标识不相同的情况下,将第一设备标识对应的第一用户信息中的用户状态设置为无效;
对用户标识及登录时间进行加密生成第二登录令牌,在令牌数据表中对应存储第二登录令牌,在用户信息数据表中对应存储第二设备标识以及当前登录用户的第二用户信息。
可选地,判断在令牌数据表中是否存在与用户标识对应的第一登录令牌之后,还包括:若不存在用户标识对应的第一登录令牌,对用户标识及登录时间进行加密生成第二登录令牌,在令牌数据表中对应存储第二登录令牌,在用户信息数据表中对应存储第二设备标识以及当前登录用户的第二用户信息。
可选地,方法还包括:若第一设备标识与本次登录设备的第二设备标识相同,则将第一登录令牌对应的记录信息从用户信息数据表中删除;对用户标识及登录时间进行加密生成第二登录令牌,在令牌数据表中对应存储第二登录令牌,在用户信息数据表中对应存储第二设备标识以及当前登录用户的第二用户信息。
可选地,对用户标识及登录时间进行加密生成第二登录令牌,在令牌数据表中对应存储第二登录令牌在用户信息数据表中对应存储第二设备标识以及当前登录用户的第二用户信息之后,还包括:将第二登录令牌对应的第二用户信息中的用户状态设置为有效。
可选地,将第二登录令牌对应的第二用户信息中的用户状态设置为有效之后,还包括:按照预设周期检测第二登录令牌的有效性;若检测到第二登录令牌已失效,将第二登录令牌对应的记录信息从用户信息数据表中删除。
可选地,在用户成功登录服务端后,获取用户的用户标识及登录时间之前,还包括:接收配置指令,根据配置指令设置与服务端对应的登录接口、忽略认证接口以及令牌有效期。
可选地,方法还包括:接收针对目标接口的访问请求,目标接口是要进行令牌认证的接口;确定目标接口是否为忽略认证接口;若不是忽略认证接口,则确定访问请求中是否存在第二登录令牌;若访问请求中不存在第二登录令牌,则确定认证失败,拒绝访问请求。
第二方面,本申请实施例还提供了一种登录令牌生成装置,所述装置包括:
获取模块,用于在用户成功登录服务端后,获取用户的用户标识及登录时间;
令牌判断模块,用于判断在令牌数据表中是否存在与用户标识对应的第一登录令牌;
标识查询模块,用于若存在对应的第一登录令牌,从用户信息数据表中获取第一登录令牌对应的第一设备标识,其中,用户信息数据表中记录有最近一次通过第一登录令牌成功登录的设备的第一设备标识、第一登录令牌以及第一用户信息之间的对应关系;
设置模块,用于在第一设备标识与本次登录设备的第二设备标识不相同的情况下,将第一设备标识对应的第一用户信息中的用户状态设置为无效;
存储模块,用于对用户标识及登录时间进行加密生成第二登录令牌,在令牌数据表中对应存储第二登录令牌,在用户信息数据表中对应存储第二设备标识以及当前登录用户的第二用户信息。
第三方面,本申请实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如上述的登录令牌生成方法的步骤。
第四方面,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上述的登录令牌生成方法的步骤。
本申请实施例带来了以下有益效果:
本申请实施例提供的一种登录令牌生成方法、装置、电子设备及存储介质,能够在网关中生成登录令牌,并将登录令牌对应的用户信息存储在网关中,可直接在网关中获取登录用户的用户信息,与现有技术中的登录令牌生成方法相比,解决了无法及时从服务器的认证组件或者认证服务中获取用户信息的问题。此外,本申请中登录令牌的生成以及认证都在网关中执行,能够降低服务器的资源消耗。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例所提供的登录令牌生成方法的流程图;
图2示出了本申请实施例所提供的登录令牌生成装置的结构示意图;
图3示出了本申请实施例所提供的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的每个其他实施例,都属于本申请保护的范围。
值得注意的是,在本申请提出之前,当用户通过客户端向服务端请求数据时,需要对用户的登录名和登录密码进行验证,同时,为了减轻服务器的压力,避免频繁地访问数据库,通常还需要对客户端发起的访问请求进行令牌认证,只有通过令牌认证后才允许客户端访问服务器,现有技术中,通常是在服务器上集成认证组件或者认证服务来为用户提供令牌(token)生成及认证服务的。然而,采用上述令牌生成及认证方式时,集成在服务器上的认证组件或者认证服务与登录服务是分离的,导致无法及时从服务器的认证组件或者认证服务中获取用户信息的问题。
基于此,本申请实施例提供了一种登录令牌生成方法,以提高获取用户信息的及时性。
首先,本申请的登录令牌生成方法应用于网关,因此,对网关进行详细介绍,本请通过自定义Apisix网关插件实现登录令牌生成方法。
Apisix是一个高性能、可扩展的微服务API网关。它是基于Nginx和Etcd来实现,和传统API网关相比,Apisix作为微服务请求网关,具有动态路由和热插件加载的特点,通过插件提供负载平衡,日志记录,身份验证等功能,Apisix的功能有很多,包括动态路由、url重写、动态上游、IP黑白名单、A/B测试、灰度发布、限速限流、监控报警、健康检查等。
Apisix网关支持多插件关联使用,可同时或者单独加载请求报文重写插件以及响应报文重写插件,以同时或者单独实现对请求参数的重写以及响应参数的重写。
请参阅图1,图1为本申请实施例所提供的一种登录令牌生成方法的流程图。如图1所示,本申请实施例提供的登录令牌生成方法,应用于网关,包括:
步骤S101,在用户成功登录服务端后,获取用户的用户标识及登录时间。
该步骤中,用户标识可指用户的唯一标识,用户标识用于与其他用户进行区分。
作为示例,用户标识可以是用户名,用户标识也可以是用户ID。
登录时间可指用户登录服务端的时间戳。
在本申请实施例中,可在Apisix网关插件中配置服务端的接口参数,然后启用网关插件,在用户通过客户端输入用户名及登录密码后,服务端验证用户名及登录密码是否正确,如果正确则返回登录成功标识给网关,网关获取用户的用户名及登录时间。
在一可选实施例中,执行步骤S101之前,还包括:接收配置指令,根据配置指令设置与服务端对应的登录接口、忽略认证接口以及令牌有效期。
这里,登录接口是指登录服务端所需的服务端接口,登录接口用于确定服务端的访问地址。
忽略认证接口是指不需要进行令牌认证的接口,作为示例,注册接口是不需要进行令牌认证的接口,即,注册接口属于忽略认证接口,将所有不进行令牌认证的接口配置在网关插件中,当用户对这些忽略认证接口进行访问时,网关将不会对该用户进行令牌认证。
令牌有效期是指登录令牌的有效时长,当令牌有效期为0时表示该登录令牌失效,用户将无法通过该登录令牌访问相应的接口。
步骤S102,判断在令牌数据表中是否存在与用户标识对应的第一登录令牌。
该步骤中,令牌数据表可指存储有登录令牌的数据表,令牌数据表是以分布式键值存储(etcd)方式实现的,令牌数据表的索引为用户名,用户名对应的键值为登录令牌。
第一登录令牌可指通过第一设备标识对应的设备登录服务端时所使用的令牌,第一登录令牌用于表征互踢登录时上一次登录使用的登录令牌。
在本申请实施例中,用户每次登录至服务端时,都会在网关的令牌数据表中存储该用户的用户名以及对应于本次登录而生成的登录令牌,网关每次生成一个登录令牌后,都会为该登录令牌设置对应的令牌有效期,当令牌有效期结束时该登录令牌失效。
然而,在生成登录令牌之前需要先确定该用户的登录方式,以根据不同的登录方式对令牌数据表以及用户信息数据表进行相应的处理。这里的登录方式包括但不限于:新用户首次登录、超时登录(即,登录令牌失效后的登录)、登出后的再登录、结束进程后的再登录、互踢登录。
新用户首次登录是指该用户为新用户,在本次登录之前从未登录过该服务端。
超时登录是指该用户在上一次登录对应的登录令牌失效后,再一次登录服务端的登录。
登出后的再登录是指用户点击“退出”按钮从服务端退出后,再次登录服务端。
结束进程后的再登录是指登录令牌处于有效期内,上一登录进程结束后用户在同一设备上使用同一账号重新登录服务端的登录,上一登录进程结束可以是因用户手动操作造成的应用程序进程的结束。
互踢登录是指用户已经在一个设备上登录服务端的同时,用户在另一设备上使用同一账号登录该服务端的登录。
在一可选实施例中,执行步骤S102之后还包括:若不存在用户标识对应的第一登录令牌,对用户标识及登录时间进行加密生成第二登录令牌,在令牌数据表中对应存储第二登录令牌,在用户信息数据表中对应存储第二设备标识以及当前登录用户的第二用户信息。
这里,第二登录令牌可指通过第二设备标识对应的设备登录服务端时所使用的令牌,第二登录令牌用于表征互踢登录时本次登录所使用的登录令牌。
第二设备标识可指用户本次登录服务端时,使用的登录设备的设备标识,第二设备标识用于确定本次登录与上一次登录所使用的设备是否相同。
示例性的,第二设备标识可以是设备识别码。
具体的,若不存在对应的第一登录令牌则说明该用户是新用户首次登录,或者是超时登录,或者是登出后的再登录,在令牌数据表中不存在该用户的其他记录,因此,可直接生成第二登录令牌,在生成第二登录令牌时,可通过对用户标识以及本次登录的登录时间进行加密的方式获得第二登录令牌。生成第二登录令牌后将分两次对第二登录令牌以及第二用户信息进行存储,第一次是将用户标识作为索引,将登录令牌作为键值存储在令牌数据表中,第二次是将登录令牌作为索引,将用户信息作为键值存储在用户信息数据表中,以在该用户再次以该账号登录服务端时,对登录登出方式进行确定并进行相应的处理。
需要说明的是,加密方式可以是AES加密方式,也可以是其他加密方式,本领域技术人员可以根据实际情况选择相应的加密方式,本申请在此不作限定。
步骤S103,若存在对应的第一登录令牌,从用户信息数据表中获取第一登录令牌对应的第一设备标识。
该步骤中,用户信息数据表可指存储有用户信息的数据表,用户信息数据表是以分布式键值存储(etcd)方式实现的。
用户信息数据表的索引为登录令牌,登录令牌对应的键值为用户信息,用户信息包括但不限于:姓名、年龄、性别、手机号、银行卡号码、设备标识、用户状态。
用户信息数据表中记录有最近一次通过第一登录令牌成功登录的设备的第一设备标识、第一登录令牌以及第一用户信息之间的对应关系。
第一设备标识可指用户上一次登录服务端时,使用的登录设备的设备标识。
示例性的,第一设备标识可以是设备识别码。
在本申请实施例中,若令牌数据表中存在对应的第一登录令牌,则说明该用户的本次登录不是新用户首次登录,也不是超时登录,也不是登出后的再登录,可能是互踢登录,也可能是结束进程后的再登录,这里,可根据上一次登录与本次登录是否使用了相同的登录设备来区分到底是互踢登录,还是结束进程后的再登录,可通过本次登录对应的用户标识在令牌数据表中查询与该用户标识对应的第一登录令牌,然后在用户数据表中查询与该登录令牌对应的用户信息,该用户信息中包括设备标识,这个设备标识就是第一设备标识,即,上一次登录所使用的登录设备的设备标识。
需要说明的是,如果在令牌数据表中存在多个登录令牌,则针对每个登录令牌,从用户数据表中找到与该登录令牌对应的用户信息,并确定用户信息中的用户状态是否为有效,如果为有效则该用户信息中的设备标识即为第一设备标识。因为,用户状态为有效的用户信息对应的记录是上一次登录对应的数据,上一次登录之前的登录对应的用户信息中的用户状态已被设置为无效。
步骤S104,在第一设备标识与本次登录设备的第二设备标识不相同的情况下,件第一设备标识对应的第一用户信息中的用户状态设置为无效。
该步骤中,用户状态可指用户的登录状态,用户状态用于确定用户是否登录了服务端,用户状态包括有效和无效。
用户状态设置为有效表示用户当前已登录,用户状态设置为无效表示用户当前未登录。
在本申请实施例中,如果第一设备标识与第二设备标识相同,说明用户是在上一次登录服务端后,使用了同一设备再次进行登录,即为结束进程后的再登录。
在一可选实施例中,方法还包括:若第一设备标识与本次登录设备的第二设备标识相同,则将第一登录令牌对应的记录信息从用户信息数据表中删除;对用户标识及登录时间进行加密生成登录令牌,在令牌数据表中对应存储第二登录令牌,在用户信息数据表中存储第二设备标识以及当前登录用户的第二用户信息。
这里,如果第一设备标识与第二设备标识相同,说明是用户通过同一设备的重新登录,即为结束进程后的再登录,则先将上一次使用该设备登录服务端的记录先后从用户信息数据表和令牌数据表中删除,并利用本次登录的用户标识和登录时间生成第二登录令牌。并将新生成的第二登录令牌分两次存储,第一次是将用户标识作为索引,将第二登录令牌作为键值存储在令牌数据表中,第二次是将新生成的第二登录令牌作为索引,将第二用户信息作为键值存储在用户信息数据表中。其中,将上一次使用该设备登录服务端的记录从令牌数据表中删除包括将用户标识对应的记录从令牌数据表中删除。
在本申请实施例中,如果第一设备标识与第二设备标识不相同,说明用户本次登录使用的设备与上一次登录使用的设备是不同的,即为互踢登录,需要在上一次登录对应的记录中将用户状态设置为无效,然后生成第二登录令牌。
具体的,在令牌数据表中通过用户标识查询到上一次登录使用的第一登录令牌,然后在用户信息数据表中查询与上一次登录使用的第一登录令牌对应的第一用户信息,将第一用户信息中的用户状态设置为无效,并触发推送接口,以向上一次登录使用的设备发送通知,通知用户该设备已被踢掉。
步骤S105,对用户标识及登录时间进行加密生成第二登录令牌,在令牌数据表中对应存储第二登录令牌,在用户信息数据表中对应存储第二设备标识以及当前登录用户的第二用户信息。
该步骤中,确定是互踢登录后,要将上一次登录对应的用户状态设置为无效,但不会将第一登录令牌从令牌数据表中删除,也不会将第一用户信息从用户信息数据表中删除。用户状态设置为无效后,需生成新的第二登录令牌,生成方式与其他登录方式对应的生成方式相同,也是分两次存储新生成的第二登录令牌,第一次是将用户标识作为索引,将新生成的第二登录令牌作为键值存储在令牌数据表中,第二次是将新生成的第二登录令牌作为索引,将第二用户信息作为键值存储在用户信息数据表中。
在一可选实施例中,对用户标识及登录时间进行加密生成第二登录令牌,在令牌数据表中对应存储第二登录令牌,在用户信息数据表中对应存储第二登录令牌以及当前登录用户的第二用户信息之后,还包括:将第二登录令牌对应的第二用户信息中的用户状态设置为有效。
这里,在存储第二登录令牌后,还要将第二登录令牌对应的第二用户信息中的用户状态设置为有效,以确定用户的当前登录行为对应的第二登录令牌及第二用户信息。
在一可选实施例中,将第二登录令牌对应的第二用户信息中的用户状态设置为有效之后,还包括:按照预设周期检测第二登录令牌的有效性;若检测到第二登录令牌失效,将第二登录令牌对应的记录信息从用户信息数据表中删除。
这里,设置第二用户信息中的用户状态为有效之后,需要对当前登录行为对应的第二登录令牌的有效期进行实时监控,如果当前登录行为对应的第二登录令牌的有效期为0,则表示当前登录行为已超时,需要将用户从服务端踢出,并从用户信息数据表中删除对应的第二用户信息,然后从令牌数据表中删除有效期为0的第二登录令牌对应的记录。
在一可选实施例中,方法还包括:接收针对目标接口的访问请求,目标接口是要进行令牌认证的接口;确定目标接口是否为忽略认证接口;若不是忽略认证接口,则确定访问请求中是否存在登录令牌;若访问请求中不存在登录令牌,则确定认证失败,拒绝访问请求。
这里,当用户访问服务端的一个接口时,首先需要判断该访问接口是否为忽略认证接口,如果是忽略认证接口则无需对访问请求进行令牌认证,如果不是忽略认证接口说明该访问请求是对需要进行令牌认证的接口进行访问,即需要对访问请求进行令牌验证,于是,网关查看该访问请求是否携带有正确的登录令牌,如果登录令牌不存在或者不正确,则不允许其进行访问。
与现有技术中登录令牌生成方法相比,本申请能够能够在网关中生成登录令牌,并将登录令牌对应的用户信息存储在网关中,可直接在网关中获取登录用户的用户信息,解决了无法及时从服务器的认证组件或者认证服务中获取用户信息的问题。此外,本申请中登录令牌的生成以及认证都在网关中执行,能够降低服务器的资源消耗。
基于同一发明构思,本申请实施例中还提供了与登录令牌生成方法对应的登录令牌生成装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述登录令牌生成方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
请参阅图2,图2为本申请实施例所提供的一种登录令牌生成装置的结构示意图。如图2中所示,所述登录令牌生成装置200包括:
获取模块201,用于在用户成功登录服务端后,获取用户的用户标识及登录时间;
令牌判断模块202,用于判断在令牌数据表中是否存在与用户标识对应的第一登录令牌;
标识查询模块203,用于若存在对应的第一登录令牌,从用户信息数据表中获取第一登录令牌对应的第一设备标识,其中,用户信息数据表中记录有最近一次通过第一登录令牌成功登录的设备的第一设备标识、第一登录令牌以及第一用户信息之间的对应关系;
设置模块204,用于在第一设备标识与本次登录设备的第二设备标识不相同的情况下,将第一设备标识对应的第一用户信息中的用户状态设置为无效;
存储模块205,用于对用户标识及登录时间进行加密生成第二登录令牌,在令牌数据表中对应存储第二登录令牌,在用户信息数据表中对应存储第二设备标识以及当前登录用户的第二用户信息。
请参阅图3,图3为本申请实施例所提供的一种电子设备的结构示意图。如图3中所示,所述电子设备300包括处理器310、存储器320和总线330。
所述存储器320存储有所述处理器310可执行的机器可读指令,当电子设备300运行时,所述处理器310与所述存储器320之间通过总线330通信,所述机器可读指令被所述处理器310执行时,可以执行如上述图1所示方法实施例中的登录令牌生成方法的步骤,具体实现方式可参见方法实施例,在此不再赘述。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时可以执行如上述图1所示方法实施例中的登录令牌生成方法的步骤,具体实现方式可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种登录令牌生成方法,其特征在于,所述方法包括:
在用户成功登录服务端后,获取所述用户的用户标识及登录时间;
判断在令牌数据表中是否存在与所述用户标识对应的第一登录令牌;
若存在对应的第一登录令牌,从用户信息数据表中获取所述第一登录令牌对应的第一设备标识,其中,所述用户信息数据表中记录有最近一次通过所述第一登录令牌成功登录的设备的第一设备标识、第一登录令牌以及第一用户信息之间的对应关系;
在所述第一设备标识与本次登录设备的第二设备标识不相同的情况下,将所述第一设备标识对应的第一用户信息中的用户状态设置为无效;
对所述用户标识及登录时间进行加密生成第二登录令牌,在令牌数据表中将所述第二登录令牌与所述用户标识对应存储,在用户信息数据表中将所述第二设备标识以及当前登录用户的第二用户信息与所述第二登录令牌对应存储。
2.根据权利要求1所述的方法,其特征在于,所述判断在令牌数据表中是否存在与所述用户标识对应的第一登录令牌之后,还包括:
若不存在所述用户标识对应的第一登录令牌,对所述用户标识及登录时间进行加密生成第二登录令牌,在令牌数据表中将所述第二登录令牌与所述用户标识对应存储,在用户信息数据表中将所述第二设备标识以及当前登录用户的第二用户信息与所述第二登录令牌对应存储。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述第一设备标识与本次登录设备的第二设备标识相同,则将所述第一登录令牌对应的记录信息从用户信息数据表中删除;
对所述用户标识及登录时间进行加密生成第二登录令牌,在令牌数据表中将所述第二登录令牌与所述用户标识对应存储,在用户信息数据表中将所述第二设备标识以及当前登录用户的第二用户信息与所述第二登录令牌对应存储。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述对所述用户标识及登录时间进行加密生成第二登录令牌,在令牌数据表中将所述第二登录令牌与所述用户标识对应存储,在用户信息数据表中将所述第二设备标识以及当前登录用户的第二用户信息与所述第二登录令牌对应存储之后,还包括:
将所述第二登录令牌对应的第二用户信息中的用户状态设置为有效。
5.根据权利要求4所述的方法,其特征在于,所述将所述第二登录令牌对应的第二用户信息中的用户状态设置为有效之后,还包括:
按照预设周期检测所述第二登录令牌的有效性;
若检测到所述第二登录令牌已失效,将所述第二登录令牌对应的记录信息从用户信息数据表中删除。
6.根据权利要求1所述的方法,其特征在于,所述在用户成功登录服务端后,获取所述用户的用户标识及登录时间之前,还包括:
接收配置指令,根据所述配置指令设置与所述服务端对应的登录接口、忽略认证接口以及令牌有效期。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
接收针对目标接口的访问请求,所述目标接口是要进行令牌认证的接口;
确定所述目标接口是否为所述忽略认证接口;
若不是忽略认证接口,则确定所述访问请求中是否存在所述第二登录令牌;
若所述访问请求中不存在所述第二登录令牌,则确定认证失败,拒绝所述访问请求。
8.一种登录令牌生成装置,其特征在于,包括:
获取模块,用于在用户成功登录服务端后,获取所述用户的用户标识及登录时间;
令牌判断模块,用于判断在令牌数据表中是否存在与所述用户标识对应的第一登录令牌;
标识查询模块,用于若存在对应的第一登录令牌,从用户信息数据表中获取所述第一登录令牌对应的第一设备标识,其中,所述用户信息数据表中记录有最近一次通过所述第一登录令牌成功登录的设备的第一设备标识、第一登录令牌以及第一用户信息之间的对应关系;
设置模块,用于在所述第一设备标识与本次登录设备的第二设备标识不相同的情况下,将所述第一设备标识对应的第一用户信息中的用户状态设置为无效;
存储模块,用于对所述用户标识及登录时间进行加密生成第二登录令牌,在令牌数据表中将所述第二登录令牌与所述用户标识对应存储,在用户信息数据表中将所述第二设备标识以及当前登录用户的第二用户信息与所述第二登录令牌对应存储。
9.一种电子设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如权利要求1至7中任一项所述的登录令牌生成方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1至7中任一项所述的登录令牌生成方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210792124.2A CN115208648B (zh) | 2022-07-05 | 2022-07-05 | 一种登录令牌生成方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210792124.2A CN115208648B (zh) | 2022-07-05 | 2022-07-05 | 一种登录令牌生成方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115208648A CN115208648A (zh) | 2022-10-18 |
CN115208648B true CN115208648B (zh) | 2023-04-28 |
Family
ID=83580851
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210792124.2A Active CN115208648B (zh) | 2022-07-05 | 2022-07-05 | 一种登录令牌生成方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115208648B (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4845660B2 (ja) * | 2006-09-26 | 2011-12-28 | 株式会社野村総合研究所 | ログイン処理装置、ログイン処理システム、プログラム、及び記録媒体 |
CN105245541B (zh) * | 2015-10-28 | 2020-02-18 | 腾讯科技(深圳)有限公司 | 鉴权方法、设备及系统 |
CN111565181A (zh) * | 2020-04-28 | 2020-08-21 | 中国联合网络通信集团有限公司 | 单一设备登录方法、服务端及客户端 |
CN114244530A (zh) * | 2021-12-16 | 2022-03-25 | 中国电信股份有限公司 | 资源访问方法及装置、电子设备、计算机可读存储介质 |
-
2022
- 2022-07-05 CN CN202210792124.2A patent/CN115208648B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115208648A (zh) | 2022-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Alaca et al. | Device fingerprinting for augmenting web authentication: classification and analysis of methods | |
CN103023918B (zh) | 为多个网络服务统一提供登录的方法、系统和装置 | |
JP6574168B2 (ja) | 端末識別方法、ならびにマシン識別コードを登録する方法、システム及び装置 | |
US11190527B2 (en) | Identity verification and login methods, apparatuses, and computer devices | |
CN110381031B (zh) | 单点登录方法、装置、设备及计算机可读存储介质 | |
JP2018501567A (ja) | 装置検証方法及び機器 | |
WO2015062378A1 (zh) | 一种客户端应用程序的用户注册方法、移动终端及服务器 | |
CN109194671B (zh) | 一种异常访问行为的识别方法及服务器 | |
CN106302308B (zh) | 一种信任登录方法和装置 | |
KR100914771B1 (ko) | 일회용 실행 코드를 이용한 보안 시스템 및 보안 방법 | |
CN110213263B (zh) | 基于联盟区块链的身份验证方法、设备及存储介质 | |
CN110690972B (zh) | 令牌认证方法、装置、电子设备及存储介质 | |
US11770385B2 (en) | Systems and methods for malicious client detection through property analysis | |
CN111030812A (zh) | 令牌验证方法、装置、存储介质及服务器 | |
US8650405B1 (en) | Authentication using dynamic, client information based PIN | |
TW201025069A (en) | Method and apparatus for information recovery in using snap shot database | |
JP2008257434A (ja) | サーバ、プログラム及び情報処理システム | |
CN111539775B (zh) | 应用程序的管理方法及设备 | |
CN110225017B (zh) | 基于联盟区块链的身份验证方法、设备及存储介质 | |
JP4787080B2 (ja) | 分散情報共有方法および端末装置 | |
CN115208648B (zh) | 一种登录令牌生成方法、装置、电子设备及存储介质 | |
CN109474665B (zh) | 一种信息处理方法、装置和计算机存储介质 | |
CN115296877B (zh) | 一种jwt存储令牌失效与续期的方法 | |
CN110971609A (zh) | Drm客户端证书的防克隆方法、存储介质及电子设备 | |
US11057395B2 (en) | Monitoring for authentication information |
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 |