客户端的认证方法及装置、存储介质、计算机设备制造方法及图纸

技术编号:35038608 阅读:99 留言:0更新日期:2022-09-24 23:16
本申请公开了一种客户端的认证方法及装置、存储介质、计算机设备,涉及互联网领域,主要目的在于改善现有基于一方存储的认证方式,当存储区域不可用时直接默认认证通过,极易导致安全问题;以及基于多方存储的方式,极易导致响应时间增加以及存储数据不一致的情况,进而导致令牌认证失败的问题。包括:接收用户的访问请求,根据缓存区的实时状态生成并存储授权码,以及发送授权码到客户端;接收客户端发送的换取令牌请求,换取令牌请求携带授权码,根据授权码生成并存储令牌,以及发送令牌到所述客户端;接收客户端发送的认证请求,认证请求携带待认证的目标令牌,根据目标令牌调取已存储的令牌,并基于已存储的令牌对目标令牌进行认证。行认证。行认证。

【技术实现步骤摘要】
客户端的认证方法及装置、存储介质、计算机设备


[0001]本申请涉及互联网
,特别是涉及一种客户端的认证方法及装置、存储介质、计算机设备。

技术介绍

[0002]随着互联网行业的飞速发展,为了能给用户带来更安全和流畅的体验,越来越多网站的登录服务开始遵循OAuth2.0协议,虽然不同公司都有各自的实现方式,但是基本的验证和授权流程是一致的,即用户访问客户端
‑‑
客户端重定向跳转到认证服务器
‑‑
用户向服务器授权
‑‑
认证服务器重定向跳转到客户端,同时附加授权码
‑‑
客户端利用授权码向认证服务器请求换取令牌
‑‑
认证服务器向客户端颁发令牌
‑‑
认证服务器验证客户端的令牌并返回验证结果。但随着用户量和接入认证系统的项目持续增长,导致接口的压力越来越大,一旦出现接口响应延迟或者服务不可用的情况,将直接导致所有需要认证的业务无法继续,进而影响用户的使用。
[0003]目前,主要有以下两种方案以解决上述问题,方案1,生成令牌时将令牌存入缓存或者数据库,验证令牌时如果缓存或者数据库服务不可用时,自动降级为默认校验通过;方案2,生成令牌时将令牌在缓存和数据库各存储一份,验证令牌时如果缓存服务不可用,则自动降级去数据库中验证。
[0004]然而,针对方案1,由于降级后是不对令牌进行校验默认校验通过的,极易造成严重的安全问题;针对方案2,由于额外增加一种存储方式,极易造成接口响应时间的增加,并且还会出现缓存和数据库中数据不一致的问题,进而导致令牌验证失败,影响用户体验感。基于此,亟需一种客户端的认证方法以解决上述问题。

技术实现思路

[0005]有鉴于此,本申请提供一种客户端的认证方法及装置、存储介质、计算机设备,主要目的在于改善现有基于一方存储的认证方式,当存储区域不可用时直接默认认证通过,极易导致安全问题;以及基于多方存储的方式,极易导致响应时间增加以及存储数据不一致的情况,进而导致令牌认证失败的问题。
[0006]依据本申请第一个方面,提供了一种客户端的认证方法,包括:
[0007]接收用户的访问请求,根据缓存区的实时状态生成并存储授权码,以及发送所述授权码到客户端;
[0008]接收所述客户端发送的换取令牌请求,所述换取令牌请求携带所述授权码,根据所述授权码生成并存储令牌,以及发送所述令牌到所述客户端;
[0009]接收所述客户端发送的认证请求,所述认证请求携带待认证的目标令牌,并且是基于所述客户端认证失败后发送的,根据所述目标令牌调取已存储的令牌,并基于已存储的令牌对所述目标令牌进行认证。
[0010]优选的,所述方法还包括:
[0011]配置缓存区以及存储数据库,以存储所述授权码以及所述令牌。
[0012]优选的,所述根据缓存区的实时状态生成并存储授权码,具体包括:
[0013]获取所述缓存区的实时状态;
[0014]若所述缓存区的实时状态为可用状态,则生成第一授权码,并将所述第一授权码存储于所述缓存区,所述第一授权码携带缓存区标识;
[0015]若所述缓存区的实时状态为不可用状态,则生成第二授权码,并将所述第二授权码存储于所述存储数据库,所述第二授权码携带存储数据库标识。
[0016]优选的,根据所述授权码生成并存储令牌,具体包括:
[0017]若所述授权码携带所述缓存区标识,则生成第一令牌,并将所述第一令牌存储于所述缓存区,所述第一令牌携带所述缓存区标识;
[0018]若所述授权码携带所述存储数据库标识,则生成第二令牌,并将所述第二令牌存储于所述存储数据库,所述第二令牌携带所述存储数据库标识。
[0019]优选的,所述根据所述目标令牌调取已存储的令牌,并基于已存储的令牌对所述目标令牌进行认证,具体包括:
[0020]若所述目标令牌携带所述缓存区标识,则遍历存储于所述缓存区的全量令牌,获取与所述目标令牌相匹配的已存储令牌,并基于所述已存储令牌对所述目标令牌进行认证;
[0021]若所述目标令牌携带所述存储数据库标识,则遍历存储于所述存储数据库的全量令牌,获取与所述目标令牌相匹配的已存储令牌,并基于所述已存储令牌对所述目标令牌进行认证。
[0022]依据本申请第二个方面,提供了另一种客户端的认证方法,包括:
[0023]接收用户的访问请求,发送获取授权码的请求到认证服务端,并接收所述认证服务端返回的授权码;
[0024]发送换取令牌的请求到所述认证服务端,所述换取令牌的请求携带所述授权码,以及接收并存储所述认证服务端返回的令牌;
[0025]对待认证的目标令牌进行本地认证;
[0026]若本地认证失败,则发送认证请求到所述认证服务端,以使得所述认证服务端基于所述认证服务端已存储的令牌对所述目标令牌进行认证,所述认证请求携带所述待认证的目标令牌。
[0027]优选的,所述方法还包括:
[0028]配置缓存区,以存储所述认证服务端返回的令牌。
[0029]依据本申请第三个方面,提供了一种客户端的认证装置,包括:
[0030]第一生成模块,用于接收用户的访问请求,根据缓存区的实时状态生成并存储授权码,以及发送所述授权码到客户端;
[0031]第二生成模块,用于接收所述客户端发送的换取令牌请求,所述换取令牌请求携带所述授权码,根据所述授权码生成并存储令牌,以及发送所述令牌到所述客户端;
[0032]第一认证模块,用于接收所述客户端发送的认证请求,所述认证请求携带待认证的目标令牌,并且是基于所述客户端认证失败后发送的,根据所述目标令牌调取已存储的令牌,并基于已存储的令牌对所述目标令牌进行认证。
[0033]优选的,所述装置还包括:
[0034]配置模块,用于配置缓存区以及存储数据库,以存储所述授权码以及所述令牌。
[0035]优选的,所述第一生成模块,具体包括:
[0036]获取单元,用于获取所述缓存区的实时状态;
[0037]生成单元,用于若所述缓存区的实时状态为可用状态,则生成第一授权码,并将所述第一授权码存储于所述缓存区,所述第一授权码携带缓存区标识;
[0038]所述生成单元,还用于若所述缓存区的实时状态为不可用状态,则生成第二授权码,并将所述第二授权码存储于所述存储数据库,所述第二授权码携带存储数据库标识。
[0039]优选的,所述第二生成模块,具体用于:
[0040]若所述授权码携带所述缓存区标识,则生成第一令牌,并将所述第一令牌存储于所述缓存区,所述第一令牌携带所述缓存区标识;
[0041]若所述授权码携带所述存储数据库标识,则生成第二令牌,并将所述第二令牌存储于所述存储数据库,所述第二令牌携带所述存储数据库标识。
[0042]优选的,所述第一认证模块,具体用于:
[0043]若所述目标令牌携带所述缓存区标识本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种客户端的认证方法,其特征在于,包括:接收用户的访问请求,根据缓存区的实时状态生成并存储授权码,以及发送所述授权码到客户端;接收所述客户端发送的换取令牌请求,所述换取令牌请求携带所述授权码,根据所述授权码生成并存储令牌,以及发送所述令牌到所述客户端;接收所述客户端发送的认证请求,所述认证请求携带待认证的目标令牌,并且是基于所述客户端认证失败后发送的,根据所述目标令牌调取已存储的令牌,并基于已存储的令牌对所述目标令牌进行认证。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:配置缓存区以及存储数据库,以存储所述授权码以及所述令牌。3.根据权利要求2所述的方法,其特征在于,所述根据缓存区的实时状态生成并存储授权码,具体包括:获取所述缓存区的实时状态;若所述缓存区的实时状态为可用状态,则生成第一授权码,并将所述第一授权码存储于所述缓存区,所述第一授权码携带缓存区标识;若所述缓存区的实时状态为不可用状态,则生成第二授权码,并将所述第二授权码存储于所述存储数据库,所述第二授权码携带存储数据库标识。4.根据权利要求3所述的方法,其特征在于,所述根据所述授权码生成并存储令牌,具体包括:若所述授权码携带所述缓存区标识,则生成第一令牌,并将所述第一令牌存储于所述缓存区,所述第一令牌携带所述缓存区标识;若所述授权码携带所述存储数据库标识,则生成第二令牌,并将所述第二令牌存储于所述存储数据库,所述第二令牌携带所述存储数据库标识。5.根据权利要求4所述的方法,其特征在于,所述根据所述目标令牌调取已存储的令牌,并基于已存储的令牌对所述目标令牌进行认证,具体包括:若所述目标令牌携带所述缓存区标识,则遍历存储于所述缓存区的全量令牌,获取与所述目标令牌相匹配的已存储令牌,并基于所述已存储令牌对所述目标令牌进行认证;若所述目标令牌携带所述存储数据库标识,则遍历存储于所述存储数据库的全量令牌,获取与所述目标令牌相匹配的已存储令牌,并基于所述已存储令牌对所述目标令牌进行认证。6.一种客户端的认证方法,其特征在于,包括:接收用户的访问请求,发送获取授权码的请求到认证服务端,并接收所述认证服务端返回的授权码;发送换取令牌的请求到所述认证服务端,所述换取令牌的请求携带所述授权码,以及接收并存储所述认证服务端返回的令牌;对待认证的目标令牌进行本地认证;若本地认证失败,则发送认证请求到所述认证服务端,以使得所述认证服务端基于所述认证服务端已存储的令牌对所述目标令牌进行认证,所述认证请求携带所述待认证...

【专利技术属性】
技术研发人员:陈文龙花晋潘燕舒强
申请(专利权)人:平安科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1