[发明专利]生成鉴权凭证和鉴权的方法、装置和设备在审
申请号: | 202010053348.2 | 申请日: | 2020-01-17 |
公开(公告)号: | CN113139170A | 公开(公告)日: | 2021-07-20 |
发明(设计)人: | 王显雷 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F21/44 | 分类号: | G06F21/44 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 颜晶 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 生成 凭证 方法 装置 设备 | ||
本申请公开了一种生成鉴权凭证和鉴权的方法、装置和设备。本申请提供的生成鉴权凭证的方法,在生成鉴权凭证时,首先,获取鉴权属性字符串,并根据鉴权属性字符串和初始布隆向量,生成布隆向量。然后,基于布隆向量生成鉴权凭证。这样,使得生成的鉴权凭证的长度较小,从而,可以减少传输鉴权凭证时的带宽的消耗,改善服务系统的性能。
技术领域
本申请涉及通信技术领域,特别涉及一种生成鉴权凭证和鉴权的方法、装置和设备。
背景技术
在一个服务系统中,一般包括用户设备、资源服务器和认证服务器。当用户设备想要访问资源服务器提供的资源时,需要先通过认证服务器的认证,认证通过后,认证服务器会生成鉴权凭证,并将生成的鉴权凭证颁发给用户设备。这样,用户设备可以携带该鉴权凭证去访问资源服务器的资源,则资源服务器可以依据鉴权凭证确定该用户设备是否有对相应资源做相应操作的权限。
相关技术中,鉴权凭证的格式通常为基于JavaScript语言的轻量级的数据交换格式JSON(JavaScript Object Notation),在JSON中包括多个鉴权属性对象(object),每个鉴权属性对象包括鉴权所需的一种鉴权属性的信息,导致生成的鉴权凭证的长度过长。而鉴权凭证需要频繁的在网络中传输,所以过长的鉴权凭证会大量的消耗带宽,对服务系统的性能造成影响。
发明内容
本申请实施例提供了一种生成鉴权凭证和鉴权的方法、装置和设备,可以用于服务系统中,通过本申请实施例提供的生成鉴权凭证的方法生成的鉴权凭证的长度较小,从而减少了传输鉴权凭证时的带宽消耗,减小了对服务系统的性能的影响。所述生成鉴权凭证和鉴权的方法、装置和设备如下所述:
第一方面,提供了一种生成鉴权凭证的方法,该方法包括:获取鉴权属性字符串。根据鉴权属性字符串和初始布隆向量,生成布隆向量,在该布隆向量中包括鉴权属性字符串的信息。根据布隆向量生成鉴权凭证。
其中,鉴权属性字符串的格式可以为键值对格式。鉴权属性字符串可以包括多个键值对,每个键值对代表一个“鉴权属性名:属性值”形式的字符串。
初始布隆向量和布隆向量均为布隆过滤器中的二进制向量,在布隆过滤器中包括一系列的哈希函数和一个二进制向量。初始布隆向量中的所有比特位的值均为0,布隆向量中有的比特位的值被置位为1。
基于鉴权属性字符串和初始布隆向量,生成布隆向量,可以理解为将鉴权属性字符串的信息存储至初始布隆向量中,得到包括鉴权属性字符串的信息的布隆向量。存储时,可以将每个键值对的信息(即每个“鉴权属性名:属性值”形式的字符串),分别存储到初始布隆向量中。
鉴权凭证的格式可以为JSON(JavaScript Object Notation)格式。
本申请实施例所示的方案,通过获取鉴权属性字符串,并基于鉴权属性字符串和初始布隆向量生成布隆向量,然后,根据布隆向量生成鉴权凭证,使得生成的鉴权凭证的长度较小,从而,减少了传输鉴权凭证时的带宽的消耗,改善了服务系统的性能。
在一种可能的实现方式中,鉴权属性字符串包括一个或多个键值对,每个键值对表示一种鉴权属性。每个键值对可以为一个字符串,例如,“user_id:id_value”。多个键值对的键名可以互不相同。
鉴权属性字符串中包括的所有键值对表示的鉴权属性,可以为认证服务器(或资源服务器)根据用户信息获取的所有鉴权属性,也可以为所有鉴权属性中的一部分鉴权属性。
在一种可能的实现方式中,获取鉴权属性字符串,包括:接收认证请求,其中,认证请求中携带用户信息。对认证请求进行认证。如果认证通过,根据用户信息,获取鉴权属性字符串。
其中,用户信息可以包括账号信息和密码信息等。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010053348.2/2.html,转载请声明来源钻瓜专利网。