一种鉴权方法、鉴权服务器、客户端及存储介质技术

技术编号:37890839 阅读:16 留言:0更新日期:2023-06-18 11:54
本申请提供一种鉴权方法、鉴权服务器、客户端及存储介质。该方法包括:获取待鉴权令牌;其中,所述待鉴权令牌为客户端发送的业务请求报文所携带;当本地存储有与所述待鉴权令牌相同的令牌时,基于本地预先存储的认证信息对所述待鉴权令牌进行鉴权。由于鉴权服务器自身存储有认证信息,因此,鉴权过程完全依赖于鉴权服务器预先存储的认证信息,则客户端发送的业务请求报文中的待鉴权令牌可以不携带上述认证信息,进而使得即使待鉴权令牌被攻击者截获,用于鉴权的认证信息也不会泄露,攻击者也无法对认证信息进行篡改和使用。无法对认证信息进行篡改和使用。无法对认证信息进行篡改和使用。

【技术实现步骤摘要】
一种鉴权方法、鉴权服务器、客户端及存储介质


[0001]本申请涉及网络安全
,具体而言,涉及一种鉴权方法、鉴权服务器、客户端及存储介质。

技术介绍

[0002]Token(令牌)验证是一种常用的服务器鉴权方式,客户端存储服务器下发的Token,并且在每次进行业务请求时均携带Token进行验证。
[0003]目前,Token中会携带用户标识、颁发时间、有效期、使用次数、权限信息等认证信息。Token一旦被攻击者截获,其携带的认证信息就会被泄露,攻击者可以轻易的对认证信息进行篡改和使用,极大地影响网络数据安全。

技术实现思路

[0004]本申请实施例的目的在于提供一种鉴权方法、鉴权服务器、客户端及存储介质,以有效地解决令牌被截获后对网络数据安全产生威胁。
[0005]本专利技术是这样实现的:
[0006]第一方面,本申请实施例提供一种鉴权方法,应用于鉴权服务器,所述方法包括:获取待鉴权令牌;其中,所述待鉴权令牌为客户端发送的业务请求报文所携带;当本地存储有与所述待鉴权令牌相同的令牌时,基于本地预先存储的认证信息对所述待鉴权令牌进行鉴权。
[0007]在本申请实施例中,由于鉴权服务器自身存储有认证信息,因此,鉴权过程完全依赖于鉴权服务器预先存储的认证信息,则客户端发送的业务请求报文中的待鉴权令牌可以不携带上述认证信息,进而使得即使待鉴权令牌被攻击者截获,用于鉴权的认证信息也不会泄露,攻击者也无法对认证信息进行篡改和使用。并且,即使客户端发送的业务请求报文中的待鉴权令牌携带认证信息,但是在实际鉴权过程中,并不会使用待鉴权令牌所携带的认证信息,因此,攻击者也无法对鉴权过程进行干预,进而极大地保证了网络数据安全。
[0008]结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述认证信息包括所述待鉴权令牌的使用次数,所述基于本地预先存储的认证信息对所述待鉴权令牌进行鉴权,包括:基于所述待鉴权令牌的使用次数,对所述待鉴权令牌进行鉴权;其中,当所述待鉴权令牌的使用次数不小于预设次数,则表征鉴权失败。
[0009]在本申请实施例中,鉴权服务器本地存储有令牌的使用次数,进而实现对待鉴权令牌的有效鉴权。
[0010]结合上述第一方面提供的技术方案,在一些可能的实现方式中,当所述待鉴权令牌的使用次数小于所述预设次数时,所述方法还包括:基于所述待鉴权令牌的使用次数,设置所述待鉴权令牌的有效时长;其中,所述待鉴权令牌的有效时长随着所述待鉴权令牌的使用次数的增加而减少;在所述待鉴权令牌的使用时长达到所述有效时长后,将本地存储的与所述待鉴权令牌相同的令牌删除。
[0011]本申请实施例中,鉴权服务器通过待鉴权令牌的使用次数,设置待鉴权令牌的有效时长,并且在待鉴权令牌的使用时长达到有效时长后,将本地存储的与待鉴权令牌相同的令牌删除,可以有效地应对客户端的并发操作等极端网络情况。
[0012]结合上述第一方面提供的技术方案,在一些可能的实现方式中,在所述待鉴权令牌鉴权成功后,且所述待鉴权令牌为首次使用时,所述方法还包括:基于所述待鉴权令牌生成子令牌;将所述子令牌发送至所述客户端,以使所述客户端基于所述子令牌将存储的所述待鉴权令牌进行替换。
[0013]本申请实施例中,通过上述令牌的更新方式,可以使得客户端发送的业务请求报文中的令牌在不断的变换,通过该方式以进一步地解决令牌被截获后对鉴权服务器造成的威胁。
[0014]结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述待鉴权令牌包括版本信息,所述基于所述待鉴权令牌生成子令牌,包括:获取所述待鉴权令牌的版本信息;构建所述子令牌,其中,所述子令牌的版本信息通过对所述待鉴权令牌的版本信息进行计算后得到。
[0015]结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述待鉴权令牌包括头部字段、中部字段和尾部字段,所述头部字段包括用户信息,所述中部字段包括预设字符,所述尾部字段包括版本信息;所述基于所述待鉴权令牌生成子令牌,包括:获取所述待鉴权令牌中的用户信息、预设字符及版本信息;构建所述子令牌,其中,所述子令牌的头部字段包括所述用户信息,所述子令牌的中部字段的信息通过对所述待鉴权令牌的预设字符及版本信息采用预设算法进行计算后得到;所述子令牌的尾部字段的信息通过对所述待鉴权令牌的版本信息进行计算后得到。
[0016]在本申请实施例中,通过对中部字段进行更新,可以提高更新的复杂性,以避免攻击者破解更新规则。
[0017]结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述方法还包括:判断本地是否存储有与所述待鉴权令牌对应的父令牌;其中,所述待鉴权令牌基于所述父令牌生成;若存在,减小所述父令牌的有效时长;当所述父令牌的使用时长达到减小后的有效时长,则将本地存储的所述父令牌删除。
[0018]在本申请实施例中,鉴权服务器在确定当前已经在使用待鉴权令牌时,可以判断本地是否存储有该待鉴权令牌的父令牌,其中,待鉴权令牌相当于是已经更新后的令牌,因此,此时可以减小父令牌的有效时长,以使其尽快的过期。通过该方式可以使得当鉴权过程中出现新的令牌时,可以将旧的令牌尽快地删除,以进一步地提高鉴权过程的安全性,减少父令牌被截获后对鉴权服务器造成的威胁。
[0019]结合上述第一方面提供的技术方案,在一些可能的实现方式中,当所述待鉴权令牌为非首次使用时,所述方法还包括:判断本地是否存储有与所述待鉴权令牌对应的子令牌;若不存在,则基于所述待鉴权令牌生成所述子令牌;并将所述子令牌发送至所述客户端,以使所述客户端基于所述子令牌将存储的所述待鉴权令牌进行替换;若存在,则将所述子令牌发送至所述客户端,以使所述客户端基于所述子令牌将存储的所述待鉴权令牌进行替换。
[0020]在本申请实施例中,当待鉴权令牌为非首次使用时,鉴权服务器会先判断本地是
否已经生成过与待鉴权令牌对应的子令牌,若不存在,则先生成子令牌,再将子令牌发送至客户端。若存在,则直接将子令牌返回至客户端。通过上述过程,以实现对待鉴权令牌的准确更新。
[0021]结合上述第一方面提供的技术方案,在一些可能的实现方式中,在所述获取待鉴权令牌之前,所述方法还包括:接收所述客户端发送的登录请求报文;其中,所述登录请求报文中携带用户信息;基于所述用户信息生成初始令牌,将所述初始令牌发送至所述客户端;其中,所述初始令牌用于被所述客户端携带至待发送的业务请求报文中,以使所述鉴权服务器对所述初始令牌进行鉴权。
[0022]在本申请实施例中,仅基于用户信息生成初始令牌,进而使得令牌中不携带认证信息,以避免认证信息的泄露。
[0023]结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述基于所述用户信息生成初始令牌,包括:基于所述用户信息生成动态字符;基于所述用户信息生成未加密的初始令牌;基于所述动态字符与固定字符所组成的秘钥对所述未加密的初始令牌进行加密,生成所述初始令牌;其中,所述固定字符由所述鉴权服务器与所述客户本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种鉴权方法,其特征在于,应用于鉴权服务器,所述方法包括:获取待鉴权令牌;其中,所述待鉴权令牌为客户端发送的业务请求报文所携带;当本地存储有与所述待鉴权令牌相同的令牌时,基于本地预先存储的认证信息对所述待鉴权令牌进行鉴权。2.根据权利要求1所述的方法,其特征在于,所述认证信息包括所述待鉴权令牌的使用次数,所述基于本地预先存储的认证信息对所述待鉴权令牌进行鉴权,包括:基于所述待鉴权令牌的使用次数,对所述待鉴权令牌进行鉴权;其中,当所述待鉴权令牌的使用次数不小于预设次数,则表征鉴权失败。3.根据权利要求2所述的方法,其特征在于,当所述待鉴权令牌的使用次数小于所述预设次数时,所述方法还包括:基于所述待鉴权令牌的使用次数,设置所述待鉴权令牌的有效时长;其中,所述待鉴权令牌的有效时长随着所述待鉴权令牌的使用次数的增加而减少;在所述待鉴权令牌的使用时长达到所述有效时长后,将本地存储的与所述待鉴权令牌相同的令牌删除。4.根据权利要求1

3中任一项所述的方法,其特征在于,在所述待鉴权令牌鉴权成功后,且所述待鉴权令牌为首次使用时,所述方法还包括:基于所述待鉴权令牌生成子令牌;将所述子令牌发送至所述客户端,以使所述客户端基于所述子令牌将存储的所述待鉴权令牌进行替换。5.根据权利要求4所述的方法,其特征在于,所述待鉴权令牌包括版本信息,所述基于所述待鉴权令牌生成子令牌,包括:获取所述待鉴权令牌的版本信息;构建所述子令牌,其中,所述子令牌的版本信息通过对所述待鉴权令牌的版本信息进行计算后得到。6.根据权利要求4所述的方法,其特征在于,所述待鉴权令牌包括头部字段、中部字段和尾部字段,所述头部字段包括用户信息,所述中部字段包括预设字符,所述尾部字段包括版本信息;所述基于所述待鉴权令牌生成子令牌,包括:获取所述待鉴权令牌中的用户信息、预设字符及版本信息;构建所述子令牌,其中,所述子令牌的头部字段包括所述用户信息,所述子令牌的中部字段的信息通过对所述待鉴权令牌的预设字符及版本信息采用预设算法进行计算后得到;所述子令牌的尾部字段的信息通过对所述待鉴权令牌的版本信息进行计算后得到。7.根据权利要求4所述的方法,其特征在于,所述方法还包括:判断本地是否存储有与所述待鉴权令牌对应的父令牌;其中,所述待鉴权令牌基于所述父令牌生成;若存在,减小所述父令牌的有效时长;当所述父令牌的使用时长达到减小后的有效时长,则将本地存储的所述父令牌删除。8.根据权利要求4所述的方法,其特征在于,当所述待鉴权令牌为非首次使用时,所述方法还包括:判断本地是否存储有与所述待鉴权令牌对应的子令牌;
若不存在,则基于所述待鉴权令牌生成所述子令牌;并将所述子令牌发送至所述客户端,以使所述客户端基于所述子令牌将存储的所述待鉴权令牌进行替换;若存在,则将所述子令牌...

【专利技术属性】
技术研发人员:李博
申请(专利权)人:深圳市芯睿视科技有限公司
类型:发明
国别省市:

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

1