[发明专利]一种基于JWT的认证方法以及系统有效
申请号: | 202011013981.5 | 申请日: | 2020-09-23 |
公开(公告)号: | CN112311762B | 公开(公告)日: | 2023-05-09 |
发明(设计)人: | 赵铭;林镇锋;易文峰;翟羽佳;蔡子琪;杨赛;昌宇顺 | 申请(专利权)人: | 南方电网数字平台科技(广东)有限公司 |
主分类号: | H04L9/40 | 分类号: | H04L9/40 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 潘登 |
地址: | 518000 广东省深圳市南山区沙河街道高*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 jwt 认证 方法 以及 系统 | ||
本发明公开了一种基于JWT的认证方法以及系统,方法包括:前端应用经由服务网关发送携带了账密信息的登录请求给认证服务;认证服务根据账密信息适配对应的校验模式,访问人员服务的具体认证接口对账密信息进行账密校验;认证服务在人员服务返回校验通过的信息时,创建票据返回给前端应用;前端应用携带票据发送业务访问请求给服务网关;服务网关对票据进行校验,校验成功后刷新票据以及并携带刷新后的票据访问业务服务,并将业务服务返回的业务数据和刷新后的票据返回给前端应用;本发明可以解决现有技术中前端和后端之间通过session共享机制进行认证控制存在的不可靠、复杂、不能很好的适应业务服务逐渐扩展的需求的缺陷。
技术领域
本发明涉及前后和后端通信的领域,尤其涉及一种基于JWT的认证方法以及系统。
背景技术
在过去单体应用体系下,前端向后端请求时一般通过session共享机制进行认证控制,在业务服务逐渐扩展增多时,一旦共享存储宕机,会导致前端应用无法访问的问题,并且每个用户登录后都需要在共享存储存放其认证的信息,甚至需要长时间存储,这种情况存在严重的资源损耗的问题。另外共享存储需要一定保护机制,因此需要通过安全链接来访问,此种场景解决方案实现具有相当高的复杂性。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种基于JWT的认证方法以及系统。
本发明解决其技术问题所采用的技术方案是:
构造一种基于JWT的认证方法,所述方法包括:
前端应用经由服务网关发送携带了账密信息的登录请求给认证服务;
认证服务根据所述账密信息适配对应的校验模式,根据所确定的校验模式访问人员服务的具体认证接口对所述账密信息进行账密校验,其中,所述人员服务提供至少一种校验模式;
认证服务在人员服务返回校验通过的信息时,创建一个票据返回给前端应用;
前端应用携带票据发送业务访问请求给服务网关;
服务网关对票据进行校验,校验成功后刷新票据以及并携带刷新后的票据访问业务服务,并将业务服务返回的业务数据和刷新后的票据返回给前端应用。
进一步地,票据包括头部、载荷和签名,头部存放包含加密种类的基础信息,载荷中存储代表票据唯一性的票据ID、票据创建时的颁发时间、过期时间、有效时长、用户信息,票据传输时是利用签名的秘钥对头部、载荷进行加密后传输。
进一步地,所述方法还包括:前端应用经由服务网关发送携带票据的注销请求给认证服务,认证服务接收到注销请求后,将票据的票据ID加入共享存储中的黑名单中以注销票据。
进一步地,所述的服务网关对票据进行校验,包括:校验票据是否有效以及校验票据是否注销,如果票据有效且未注销,则判定校验成功;
其中,票据有效是指的票据中的过期时间未过,票据注销是指的票据的票据ID存在于共享存储中的黑名单中。
进一步地,所述方法还包括:如果票据无效,则将票据的票据ID加入共享存储中的黑名单中以注销票据。
进一步地,所述的刷新票据,包括:服务网关将当前时间加上票据中有效时长得到的时间,写入并覆盖票据的过期时间。
进一步地,所述方法还包括:
服务网关在前端应用携带票据发送业务访问请求时,首先判断前端应用携带的票据是否与自身所在的本系统一致,如果一致才对票据进行校验,否则将该票据发送给预先获取的第三方系统的票据校验接口,并在接收到第三方系统反馈的票据校验通过的反馈信息时,基于接收的反馈信息创建本系统的票据后返回给前端应用,以便前端应用下次凭该票据访问。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南方电网数字平台科技(广东)有限公司,未经南方电网数字平台科技(广东)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011013981.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:输电线路故障区域定位装置的检测平台
- 下一篇:一种双孔车床