一种用户登录凭证的处理方法及装置与流程

文档序号:26050968发布日期:2021-07-27 15:26阅读:100来源:国知局
一种用户登录凭证的处理方法及装置与流程

本发明涉及互联网在线服务技术领域,具体的涉及一种用户登录凭证的处理方法及装置。



背景技术:

随着互联网行业的高速发展,线上取代线下,各类目的服务数不胜数,而各类服务绝大多数是服务于人,进而离不开账号服务(passport),该类服务的职责就是管理用户登录凭证的生命周期,而目前大部分服务的登录凭证很简单,通过一段不可逆的hash串作为凭证,存储在分布式缓存中间件cache中,提供凭证有效性校验。

现有技术的缺点:

一、登录凭证无语义、无法解读,在做风控、数据分析、流量分析中不可用,并且如果需要用户信息需要将流量穿透到存储,对下游依赖服务也造成压力和无意义流量。

二、登录凭证浪费存储,hash串作为登录标识,以此为key存储到分布式缓存中间件cache中,key的过期时间就是凭证的过期时间(一般都比较长,月级别)。这样存储资源一直被占用,并且随着用户量的增加存储的诉求更大,这种方式会导致分布式缓存中间件cache的存储资源浪费。

三、登录凭证无状态,没有任何记忆能力,登录凭证之间都互相独立,不便追溯。

四、登录凭证无版本,如果登录凭证的hash串生成规则有变化,就会导致历史生成的登录凭证全部失去作用,进而导致所有用户丢失登录态。

因此,本发明主要是为了解决登录服务用户登录凭证无语义、无状态、无版本、高存储的问题。

有鉴于此,特提出本发明。



技术实现要素:

为了解决以上问题,本发明提出了一种用户登录凭证的处理方法,包括响应于生成登录凭证的请求,按照预设登录凭证结构生成用户登录凭证;

所述预设登录凭证结构包括:

定义登录凭证的整体结构包括凭证头部header和凭证主体body;

所述的凭证头部header记录凭证主体body的加密信息,所述的凭证主体body记录登录信息。

作为本发明的可选实施方式,所述的凭证头部header记录的内容包括:

凭证版本信息version,记录用户登录凭证的版本;

以及加密算法信息alg,记录凭证主体body的凭证主体加密算法;

所述的凭证头部header通过凭证头部加密算法进行加密。

作为本发明的可选实施方式,所述的凭证主体body记录的内容包括:

服务信息,记录服务的appid;

和/或用户账号信息,记录用户登录的openid;

和/或凭证生成时间信息,记录凭证生成的时间createtime;

和/或凭证有效时间信息,记录凭证的有效时间ttl;

和/或凭证记录信息,记录凭证生成的记录编号rn。

作为本发明的可选实施方式,本实施例的一种用户登录凭证的处理方法,包括响应于登录请求,进行用户登录凭证有效性验证的用户登录凭证验证过程;

所述用户登录凭证验证过程包括:

对所述凭证头部header进行反解,获取凭证版本信息version和加密算法信息alg;

根据获取的加密算法信息alg获取对应的解密秘钥对凭证主体body进行解密获取凭证主体body记录的登录信息;

根据获取的登录信息验证用户登录凭证的有效性验。

作为本发明的可选实施方式,所述根据获取的登录信息验证用户登录凭证的有效性验包括:

通过解析出的用户账号信息中的openid在分布式缓存中间件cache中获取服务端的记录编号rn’;

将解析出的凭证记录信息中的记录编号rn与服务端的记录编号rn’进行比较,如果一致,则用户登录凭证有效,是登录状态,如果不一致,则用户登录凭证无效,需要重新登录。

作为本发明的可选实施方式,本发明的一种用户登录凭证的处理方法包括:

首次登录成功,凭证记录信息的记录编号rn初始值记为r0,存储到分布式缓存中间件cache中,打包进用户登录凭证中;

之后每次登录成功,操作分布式缓存中间件cache中的记录编号rn进行原子性的自增+i,然后再打包到新的用户登录凭证中;

其中,所述的r0、i均为设定值;

可选地,所述的r0、i均为正整数。

作为本发明的可选实施方式,本发明的一种用户登录凭证的处理方法包括将用户登录凭证进行存储的用户登录凭证存储过程:

通过将整型的用户唯一的用户账号信息的openid作为分布式缓存中间件cache的key,将凭证记录信息的记录编号rn作为分布式缓存中间件cache的value,进行用户登录凭证的key-value存储。

作为本发明的可选实施方式,本发明的一种用户登录凭证的处理方法包括:

更改所述用户登录凭证的加密方式或者解密秘钥,在服务端新增用户登录凭证的凭证版本信息version、与凭证版本信息version相对应的一套加密算法信息alg以及与加密算法信息alg相对应的密钥;

服务端根据用户登录凭证中的凭证版本信息version进行解析处理。

作为本发明的可选实施方式,本发明的一种用户登录凭证的处理方法包括:

所述的用户登录凭证在用户首次登录时生成,在用户登出、或者踢出、或者修改密码、或者过期时失效。

本发明同时提供一种用户登录凭证的处理装置,包括:

用户登录凭证生成模块,响应于生成登录凭证的请求,按照预设登录凭证结构生成用户登录凭证;

所述预设登录凭证结构包括:定义登录凭证的整体结构包括凭证头部header和凭证主体body;所述的凭证头部header记录凭证主体body的加密信息,所述的凭证主体body记录登录信息。

与现有技术相比,本发明的有益效果:

本发明的用户登录凭证的处理方法及装置具有如下优点:

一、用户登录凭证语义化

通过预设登录凭证结构生成用户登录凭证,实现了用户登录凭证的语义化,每个用户登录凭证都可独立反解,系统可获取反解出的更多信息,可直接用于做风控、数据分析、流量分析中,并且不需要将这部分用户信息通过流量穿透到存储,对下游依赖服务不会造成压力,不会浪费流量。

二、用户登录凭证存储最小化

通过将用户登录凭证中的用户账号信息的openid作为分布式缓存中间件cache的key,将凭证记录信息的记录编号rn作为分布式缓存中间件cache的value,进行key-value存储,减少了存储内容,整体节省了很多存储空间,避免存储资源一直被过多的占用造成分布式缓存中间件cache的存储资源浪费。

三、用户登录凭证状态化

通过记录编号rn实现了用户登录凭证的状态化,实现了对用户登录凭证登录状态的记忆,凭证之间具有编号关系,便于追溯登录状态信息。

四、用户登录凭证版本化

通过在用户登录凭证的凭证头部header中设置当前凭证所属的凭证版本信息version和加密算法信息alg,当需要改变凭证的加密方式或者密钥时,只需要在服务端新增一个version版本号,该版本号对应了一套新的加密算法alg和密钥,之后的用户登录凭证使用新的版本号,之前旧版本中有效的登录凭证依旧可以通过验证,这样不同版本的凭证使用对应的策略进行解析处理,完美解决了凭证版本的问题。

附图说明:

图1本发明的一种用户登录凭证的处理方法生成的用户登录凭证的整体结构组成示意图;

图2本发明的一种用户登录凭证的处理方法针对用户登录凭证的存储方式示意图;

图3本发明的一种用户登录凭证的处理方法的用户登录凭证的生成及失效方式示意图;

图4本发明的一种用户登录凭证的处理方法针对用户登录凭证有效性验证的流程图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图,对本发明实施例中的技术方案进行清楚、完整的描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。

因此,以下对本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的部分实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征和技术方案可以相互组合。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

在本发明的描述中,需要说明的是,术语“上”、“下”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,或者是本领域技术人员惯常理解的方位或位置关系,这类术语仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

本实施例提供一种用户登录凭证的处理方法,包括响应于生成登录凭证的请求,按照预设登录凭证结构生成用户登录凭证。

参见图1所示,本实施例所述预设登录凭证结构包括:

定义登录凭证的整体结构包括凭证头部header和凭证主体body;

所述的凭证头部header记录凭证主体body的加密信息,所述的凭证主体body记录登录信息。

本实施例用户登录凭证的处理方法相对于现有hash串作为凭证仅用于登录用户信息验证的方式,实现了生成用户登录凭证的语义化,因此服务系统可根据已知的语义对生成的用户登录凭证进行独立反解,获取更多的信息,可用做风控、数据分析、流量分析中去。

作为本实施例的可选实施方式,参见图1所示,本实施例所述的凭证头部header记录的内容包括:

凭证版本信息version,记录用户登录凭证的版本;

以及加密算法信息alg,记录凭证主体body的凭证主体加密算法;

所述的凭证头部header通过凭证头部加密算法进行加密。

本实施例的用户登录凭证的处理方法根据用户登录凭证的语义化结构特点,对凭证头部header和凭证主体body分别进行加密,确保用户登录凭证的保密性。

现有技术中hash串作为凭证,由于登录凭证无法做版本区分,在进行凭证的hash串生成规则有变化,就会导致历史生成的凭证全部失去作用,进而导致所有用户丢失登录态。而本实施例的凭证头部header记录凭证版本信息version,这样可以使得用户登录凭证版本话,服务端设有各凭证版本信息version以及与之对应的加密算法信息alg、秘钥,这样不同版本的用户登录凭证使用对应的策略进行解析处理,完美解决了用户登录凭证版本的问题。

作为本实施例的可选实施方式,本实施例所述的凭证头部header整体通过base64算法加密,可对称解密。

参见图1所示,本实施例所述的凭证主体body记录的内容包括:

服务信息,记录服务的appid,appid是应用编号,由app和id组合而形成的名称,app是指应用服务,id是指编号,一般由字母和数字组成一串符号,作为应用软件的唯一识别码,便于开发者和平台进行区分。用户账号信息,记录用户登录的openid,即用户登录的账号名。

凭证生成时间信息,记录凭证生成的时间createtime。

凭证有效时间信息,记录凭证的有效时间ttl,根据凭证生成的时间createtime以及凭证的有效时间ttl,可以确定凭证的失效时间,用于验证凭证是否过期失效。

以及凭证记录信息,记录凭证生成的记录编号rn,本实施例通过记录编号rn实现了用户登录凭证的状态化,即凭证主体body中的rn记录号存储在cache中,rn作为一个有状态的属性,使得整体用户登录凭证有状态。

参见图4所示,本实施例所述的一种用户登录凭证的处理方法,包括当用户再次登录时,进行用户登录凭证有效性验证的用户登录凭证验证过程。

所述用户登录凭证验证过程包括:

对所述凭证头部header进行反解,获取凭证版本信息version和加密算法信息alg;

根据获取的加密算法信息alg获取对应的解密秘钥对凭证主体body进行解密获取凭证主体body记录的登录信息;

根据获取的登录信息验证用户登录凭证的有效性验。

本实施例的用户登录凭证的处理方法在进行用户登录凭证反向解密时,先进行凭证头部header的解密,根据解密出的凭证头部header的信息再进行凭证主体body的解密,采用逐层解密的方式,用户登录凭证不易被破解,安全性更高。

具体地,本实施例所述根据获取的登录信息验证用户登录凭证的有效性验包括:

通过解析出的用户账号信息中的openid在分布式缓存中间件cache中获取服务端的记录编号rn’;

将解析出的凭证记录信息中的记录编号rn与服务端的记录编号rn’进行比较,如果一致,则用户登录凭证有效,是登录状态,如果不一致,则用户登录凭证无效,需要重新登录。

本实施例的用户登录凭证的处理方法通过用户账号信息中的openid与分布式缓存中间件cache中的openid进行匹配,并同时获取匹配的openid所对应的服务端的记录编号rn’,将解析出的凭证记录信息中的记录编号rn与服务端的记录编号rn’进行比较,判断是否一致进行登录状态有效性的验证。

因此,本实施例用户登录凭证的处理方法通过记录编号rn实现了用户登录凭证的状态化,实现了对用户登录凭证登录状态的记忆,凭证之间具有编号关系,便于追溯登录状态信息。

为了实现对用户登录凭证的状态化以及对登录态的校验,本实施例的一种用户登录凭证的处理方法包括:

用户首次登录成功,凭证记录信息的记录编号rn初始值记为r0,存储到分布式缓存中间件cache中,打包进用户登录凭证中;

用户之后每次登录成功之后,操作分布式缓存中间件cache中的记录编号rn进行原子性的自增+i,然后再打包到新的用户登录凭证中;

其中,所述的r0、i均为设定值。

可选地,所述的r0、i均为正整数;具体可选地,所述的r0=1,i=1。

作为本实施例的可选实施方式,参见图2所示,本实施例的一种用户登录凭证的处理方法,包括将用户登录凭证进行存储的用户登录凭证存储过程:

通过将整型的用户唯一的用户账号信息的openid作为分布式缓存中间件cache的key,将凭证记录信息的记录编号rn作为分布式缓存中间件cache的value,进行用户登录凭证的key-value存储。

本实施例的用户登录凭证按照设定的语义生成后,也需要存储到分布式缓存中间件cache中,但是不会存储很长字节(比如32位md5),我们通过整型的用户唯一的用户账号信息的openid作为分布式缓存中间件cache的key,用body中的记录编号rn作为分布式缓存中间件cache的value,整体节省了很大存储空间。

由于本实施例的用户登录凭证的处理方法在进行用户登录凭证有效性验证的时候,只进行用户账号信息的openid匹配和记录编号rn的比对,因此,本实施例只进行用户账号信息的openid和记录编号rn这两部分进行存储。

本实施例的用户登录凭证采用key-value存储,key是关键字、value是值。key-value分布式存储系统查询速度快、存放数据量大、支持高并发,非常适合通过主键进行查询,但不能进行复杂的条件查询。key-value数据库是一种以键值对存储数据的一种数据库,类似java中的map。可以将整个数据库理解为一个大的map,每个键都会对应一个唯一的值。

作为本实施例的可选实施方式,本实施例所述的一种用户登录凭证的处理方法,包括:

当需要更改所述用户登录凭证的加密方式或者解密秘钥时,在服务端新增用户登录凭证的凭证版本信息version、与凭证版本信息version相对应的一套加密算法信息alg以及与加密算法信息alg相对应的密钥;

服务端根据用户登录凭证中的凭证版本信息version使用对应的策略进行解析处理。

本实施例的用户登录凭证实现了版本化,在用户登录凭证的凭证头部header中设置了当前凭证所属的凭证版本信息version和加密算法信息alg,当需要改变凭证的加密方式或者密钥时,只需要在服务端新增一个version版本号,该版本号对应了一套新的加密算法alg和密钥,之后的用户登录凭证使用新的版本号,之前旧版本中有效的登录凭证依旧可以通过验证,这样不同版本的凭证使用对应的策略进行解析处理,完美解决了凭证版本的问题。

参见图3所示,本实施例的一种用户登录凭证的处理方法,所述的用户登录凭证在用户首次登录时生成,在用户登出、或者踢出、或者修改密码、或者过期时失效。

本实施例的用户登录凭证的处理方法具有如下优点:

一、用户登录凭证语义化

通过预设登录凭证结构生成用户登录凭证,实现了用户登录凭证的语义化,每个用户登录凭证都可独立反解,系统可获取反解出的更多信息,可直接用于做风控、数据分析、流量分析中,并且不需要将这部分用户信息通过流量穿透到存储,对下游依赖服务不会造成压力,不会浪费流量。

二、用户登录凭证存储最小化

通过将用户登录凭证中的用户账号信息的openid作为分布式缓存中间件cache的key,将凭证记录信息的记录编号rn作为分布式缓存中间件cache的value,进行key-value存储,减少了存储内容,整体节省了很多存储空间,避免存储资源一直被过多的占用造成分布式缓存中间件cache的存储资源浪费。

三、用户登录凭证状态化

通过记录编号rn实现了用户登录凭证的状态化,实现了对用户登录凭证登录状态的记忆,凭证之间具有编号关系,便于追溯登录状态信息。

四、用户登录凭证版本化

通过在用户登录凭证的凭证头部header中设置当前凭证所属的凭证版本信息version和加密算法信息alg,当需要改变凭证的加密方式或者密钥时,只需要在服务端新增一个version版本号,该版本号对应了一套新的加密算法alg和密钥,之后的用户登录凭证使用新的版本号,之前旧版本中有效的登录凭证依旧可以通过验证,这样不同版本的凭证使用对应的策略进行解析处理,完美解决了凭证版本的问题。

本实施例同时提供一种用户登录凭证的处理装置,包括:

用户登录凭证生成模块,响应于生成登录凭证的请求,按照预设登录凭证结构生成用户登录凭证;

所述预设登录凭证结构包括:定义登录凭证的整体结构包括凭证头部header和凭证主体body;所述的凭证头部header记录凭证主体body的加密信息,所述的凭证主体body记录登录信息。

本实施例用户登录凭证的处理装置相对于现有hash串作为凭证仅用于登录用户信息验证的方式,用户登录凭证生成模块生成用户登录凭证实现语义化,因此服务系统可根据已知的语义对生成的用户登录凭证进行独立反解,获取更多的信息,可用做风控、数据分析、流量分析中去。

作为本实施例的可选实施方式,本实施例所述的凭证头部header记录的内容包括:

凭证版本信息version,记录用户登录凭证的版本;

以及加密算法信息alg,记录凭证主体body的凭证主体加密算法;

所述的凭证头部header通过凭证头部加密算法进行加密。

本实施例的用户登录凭证的处理装置,用户登录凭证生成模块包括加密单元,加密单元根据用户登录凭证的语义化结构特点,对凭证头部header和凭证主体body分别进行加密,确保用户登录凭证的保密性。

现有技术中hash串作为凭证,由于登录凭证无法做版本区分,在进行凭证的hash串生成规则有变化,就会导致历史生成的凭证全部失去作用,进而导致所有用户丢失登录态。而本实施例的凭证头部header记录凭证版本信息version,这样可以使得用户登录凭证版本话,服务端设有各凭证版本信息version以及与之对应的加密算法信息alg、秘钥,这样不同版本的用户登录凭证使用对应的策略进行解析处理,完美解决了用户登录凭证版本的问题。

作为本实施例的可选实施方式,本实施例所述的凭证头部header整体通过base64算法加密,可对称解密。

本实施例所述的凭证主体body记录的内容包括:

服务信息,记录服务的appid,appid是应用编号,由app和id组合而形成的名称,app是指应用服务,id是指编号,一般由字母和数字组成一串符号,作为应用软件的唯一识别码,便于开发者和平台进行区分。用户账号信息,记录用户登录的openid,即用户登录的账号名。

凭证生成时间信息,记录凭证生成的时间createtime。

凭证有效时间信息,记录凭证的有效时间ttl,根据凭证生成的时间createtime以及凭证的有效时间ttl,可以确定凭证的失效时间,用于验证凭证是否过期失效。

以及凭证记录信息,记录凭证生成的记录编号rn,本实施例通过记录编号rn实现了用户登录凭证的状态化,即凭证主体body中的rn记录号存储在cache中,rn作为一个有状态的属性,使得整体用户登录凭证有状态。

本实施例所述的一种用户登录凭证的处理装置,包括用户登录凭证验证模块,当用户再次登录时,用户登录凭证验证模块进行用户登录凭证有效性验证。

所述用户登录凭证验证模块包括:

解析单元,对所述凭证头部header进行反解,获取凭证版本信息version和加密算法信息alg;

解密单元,根据获取的加密算法信息alg获取对应的解密秘钥对凭证主体body进行解密获取凭证主体body记录的登录信息;

以及验证单元,根据获取的登录信息验证用户登录凭证的有效性验。

本实施例的用户登录凭证的处理装置在进行用户登录凭证反向解密时,解析单元先进行凭证头部header的解密,解密单元根据解密出的凭证头部header的信息再进行凭证主体body的解密,采用逐层解密的方式,用户登录凭证不易被破解,安全性更高。

具体地,本实施例所述的解密单元根据获取的登录信息验证用户登录凭证的有效性验包括:

通过解析出的用户账号信息中的openid在分布式缓存中间件cache中获取服务端的记录编号rn’;

将解析出的凭证记录信息中的记录编号rn与服务端的记录编号rn’进行比较,如果一致,则用户登录凭证有效,是登录状态,如果不一致,则用户登录凭证无效,需要重新登录。

本实施例的用户登录凭证的处理装置通过用户账号信息中的openid与分布式缓存中间件cache中的openid进行匹配,并同时获取匹配的openid所对应的服务端的记录编号rn’,将解析出的凭证记录信息中的记录编号rn与服务端的记录编号rn’进行比较,判断是否一致进行登录状态有效性的验证。

因此,本实施例用户登录凭证的处理装置通过记录编号rn实现了用户登录凭证的状态化,实现了对用户登录凭证登录状态的记忆,凭证之间具有编号关系,便于追溯登录状态信息。

为了实现对用户登录凭证的状态化以及对登录态的校验,本实施例的一种用户登录凭证的处理装置:

用户首次登录成功,凭证记录信息的记录编号rn初始值记为1,存储到分布式缓存中间件cache中,打包进用户登录凭证中;

用户之后每次登录成功之后,操作分布式缓存中间件cache中的记录编号rn进行原子性的自增+1,然后再打包到新的用户登录凭证中。

作为本实施例的可选实施方式,本实施例的一种用户登录凭证的处理装置,包括用户登录凭证存储模块,将用户登录凭证进行存储:

通过将整型的用户唯一的用户账号信息的openid作为分布式缓存中间件cache的key,将凭证记录信息的记录编号rn作为分布式缓存中间件cache的value,进行用户登录凭证的key-value存储。

本实施例的用户登录凭证按照设定的语义生成后,也需要存储到分布式缓存中间件cache中,但是不会存储很长字节(比如32位md5),我们通过整型的用户唯一的用户账号信息的openid作为分布式缓存中间件cache的key,用body中的记录编号rn作为分布式缓存中间件cache的value,整体节省了很大存储空间。

由于本实施例的用户登录凭证的处理装置在进行用户登录凭证有效性验证的时候,只进行用户账号信息的openid匹配和记录编号rn的比对,因此,本实施例只进行用户账号信息的openid和记录编号rn这两部分进行存储。

本实施例的用户登录凭证采用key-value存储,key是关键字、value是值。key-value分布式存储系统查询速度快、存放数据量大、支持高并发,非常适合通过主键进行查询,但不能进行复杂的条件查询。key-value数据库是一种以键值对存储数据的一种数据库,类似java中的map。可以将整个数据库理解为一个大的map,每个键都会对应一个唯一的值。

作为本实施例的可选实施方式,本实施例所述的一种用户登录凭证的处理装置:

当需要更改所述用户登录凭证的加密方式或者解密秘钥时,在服务端新增用户登录凭证的凭证版本信息version、与凭证版本信息version相对应的一套加密算法信息alg以及与加密算法信息alg相对应的密钥;

服务端根据用户登录凭证中的凭证版本信息version使用对应的策略进行解析处理。

本实施例的用户登录凭证的处理装置实现了用户登录凭证的版本化,在用户登录凭证的凭证头部header中设置了当前凭证所属的凭证版本信息version和加密算法信息alg,当需要改变凭证的加密方式或者密钥时,只需要在服务端新增一个version版本号,该版本号对应了一套新的加密算法alg和密钥,之后的用户登录凭证使用新的版本号,之前旧版本中有效的登录凭证依旧可以通过验证,这样不同版本的凭证使用对应的策略进行解析处理,完美解决了凭证版本的问题。

本实施例的一种用户登录凭证的处理装置,所述的用户登录凭证在用户首次登录时生成,在用户登出、或者踢出、或者修改密码、或者过期时失效。

本实施例的用户登录凭证的处理装置具有如下优点:

一、用户登录凭证语义化

通过预设登录凭证结构生成用户登录凭证,实现了用户登录凭证的语义化,每个用户登录凭证都可独立反解,系统可获取反解出的更多信息,可直接用于做风控、数据分析、流量分析中,并且不需要将这部分用户信息通过流量穿透到存储,对下游依赖服务不会造成压力,不会浪费流量。

二、用户登录凭证存储最小化

通过将用户登录凭证中的用户账号信息的openid作为分布式缓存中间件cache的key,将凭证记录信息的记录编号rn作为分布式缓存中间件cache的value,进行key-value存储,减少了存储内容,整体节省了很多存储空间,避免存储资源一直被过多的占用造成分布式缓存中间件cache的存储资源浪费。

三、用户登录凭证状态化

通过记录编号rn实现了用户登录凭证的状态化,实现了对用户登录凭证登录状态的记忆,凭证之间具有编号关系,便于追溯登录状态信息。

四、用户登录凭证版本化

通过在用户登录凭证的凭证头部header中设置当前凭证所属的凭证版本信息version和加密算法信息alg,当需要改变凭证的加密方式或者密钥时,只需要在服务端新增一个version版本号,该版本号对应了一套新的加密算法alg和密钥,之后的用户登录凭证使用新的版本号,之前旧版本中有效的登录凭证依旧可以通过验证,这样不同版本的凭证使用对应的策略进行解析处理,完美解决了凭证版本的问题。

本实施例还提供了一种电子设备,包括处理器和存储器,所述存储器用于存储计算机可执行程序,当所述计算机程序被所述处理器执行时,所述处理器执行所述的一种用户登录凭证的处理方法。

电子设备以通用计算设备的形式表现。其中处理器可以是一个,也可以是多个并且协同工作。本发明也不排除进行分布式处理,即处理器可以分散在不同的实体设备中。本发明的电子设备并不限于单一实体,也可以是多个实体设备的总和。

所述存储器存储有计算机可执行程序,通常是机器可读的代码。所述计算机可读程序可以被所述处理器执行,以使得电子设备能够执行本发明的方法,或者方法中的至少部分步骤。

所述存储器包括易失性存储器,例如随机存取存储单元(ram)和/或高速缓存存储单元,还可以是非易失性存储器,如只读存储单元(rom)。

应当理解,本发明的电子设备中还可以包括上述示例中未示出的元件或组件。例如,有些电子设备中还包括有显示屏等显示单元,有些电子设备还包括人机交互元件,例如按扭、键盘等。只要该电子设备能够执行存储器中的计算机可读程序以实现本发明方法或方法的至少部分步骤,均可认为是本发明所涵盖的电子设备。

本实施例还提供了一种计算机可读存储介质,存储有计算机可执行程序,所述计算机可执行程序被执行时,实现所述的一种用户登录凭证的处理方法。

本实施例所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。

通过以上对实施方式的描述,本领域的技术人员易于理解,本发明可以由能够执行特定计算机程序的硬件来实现,例如本发明的系统,以及系统中包含的电子处理单元、服务器、客户端、手机、控制单元、处理器等。本发明也可以由执行本发明的方法的计算机软件来实现,例如由微处理器、电子控制单元,客户端、服务器端等执行的控制软件来实现。但需要说明的是,执行本发明的方法的计算机软件并不限于由一个或特定个的硬件实体中执行,其也可以是由不特定具体硬件的以分布式的方式来实现。对于计算机软件,软件产品可以存储在一个计算机可读的存储介质(可以是cd-rom,u盘,移动硬盘等)中,也可以分布式存储于网络上,只要其能使得电子设备执行根据本发明的方法。

以上实施例仅用以说明本发明而并非限制本发明所描述的技术方案,尽管本说明书参照上述的各个实施例对本发明已进行了详细的说明,但本发明不局限于上述具体实施方式,因此任何对本发明进行修改或等同替换;而一切不脱离发明的精神和范围的技术方案及其改进,其均涵盖在本发明的权利要求范围当中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1