【技术实现步骤摘要】
一种基于JWT扩展的用户认证系统
本专利技术涉及网络应用相关
,尤其是指一种基于JWT扩展的用户认证系统。
技术介绍
JWT(JSONWEBTOKEN),是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准,因为JSON的通用性,所以JWT是可以进行跨语言支持的,像JAVA、JavaScript、NodeJS、PHP等很多语言都可以使用。目前基于JWT的用户认证方案虽然可以做到高性能、无存储进行认证,但也是这种无存储特性,导致分发出去的认证信息无法控制,比如:禁用/删除/延期。
技术实现思路
本专利技术是为了克服现有技术中存在上述的不足,提供了一种认证信息可控的基于JWT扩展的用户认证系统。为了实现上述目的,本专利技术采用以下技术方案:一种基于JWT扩展的用户认证系统,包括获取认证信息模块、第一计算模块、客户端请求模块、第二计算模块、第一判断模块、第二判断模块、第三判断模块、第四判断模块、第三计算模块、延期或删除认证信息存储模块、删除认证请求模块、延期认证请求模块 ...
【技术保护点】
1.一种基于JWT扩展的用户认证系统,其特征是,包括获取认证信息模块、第一计算模块、客户端请求模块、第二计算模块、第一判断模块、第二判断模块、第三判断模块、第四判断模块、第三计算模块、延期或删除认证信息存储模块、删除认证请求模块、延期认证请求模块、认证成功模块、认证失败模块;其中:/n获取认证信息模块用于携带用户信息请求服务端,与第一计算模块连接;/n第一计算模块用于计算认证信息,与客户端请求模块连接;/n客户端请求模块用于携带认证信息进行业务请求,与第二计算模块连接;/n第二计算模块用于接收客户端认证信息进行计算、解析,与第一判断模块连接;/n第一判断模块用于判断第二计算 ...
【技术特征摘要】
1.一种基于JWT扩展的用户认证系统,其特征是,包括获取认证信息模块、第一计算模块、客户端请求模块、第二计算模块、第一判断模块、第二判断模块、第三判断模块、第四判断模块、第三计算模块、延期或删除认证信息存储模块、删除认证请求模块、延期认证请求模块、认证成功模块、认证失败模块;其中:
获取认证信息模块用于携带用户信息请求服务端,与第一计算模块连接;
第一计算模块用于计算认证信息,与客户端请求模块连接;
客户端请求模块用于携带认证信息进行业务请求,与第二计算模块连接;
第二计算模块用于接收客户端认证信息进行计算、解析,与第一判断模块连接;
第一判断模块用于判断第二计算模块解析后的结果,分别与第二判断模块、第三判断模块连接;
第二判断模块用于处理认证信息未过期的情况,分别与延期或删除认证信息存储模块、认证成功模块、认证失败模块连接;
第三判断模块用于处理认证信息已过期的情况,分别与第四判断模块、延期或删除认证信息存储模块、认证失败模块连接;
第四判断模块用于处理认证信息已过期且有延期标识的情况,分别与认证成功模块、认证失败模块连接;
第三计算模块用于接收及计算删除认证及延期认证的请求,分别与延期或删除认证信息存储模块、删除认证请求模块、延期认证请求模块连接;
延期或删除认证信息存储模块用于记录延期或删除的认证信息;
删除认证请求模块用于请求删除当前的认证信息;
延期认证请求模块用于请求延期当前的认证信息;
认证成功模块用于响应第二计算模块解析出的信息至客户端;
认证失败模块用于响应对应的异常信息至客户端。
2.根据权利要求1所述的一种基于JWT扩展的用户认证系统,其特征是,获取认证信息模块通过用户名/密码或系统分发出去的accessKey/accessSecret去请求服务端;第一计算模块接收到获取认证信息模块的信息后,先进行有效性验证,再根据JWT规则生成对应token,token即后续的认证信息,具体规则如下:
使用当前用户的唯一标识+32位UUID作为头,中间加入最大过期时间,后续对该token进行延期时不允许超过此范围,同时设置本次token的有效期,最后的加密使用当前用户的密码。
3.根据权利要求2所述的一种基于JWT扩展...
【专利技术属性】
技术研发人员:代存折,李妃军,
申请(专利权)人:杭州当虹科技股份有限公司,
类型:发明
国别省市:浙江;33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。