CN113139170A - 生成鉴权凭证和鉴权的方法、装置和设备 - Google Patents
生成鉴权凭证和鉴权的方法、装置和设备 Download PDFInfo
- Publication number
- CN113139170A CN113139170A CN202010053348.2A CN202010053348A CN113139170A CN 113139170 A CN113139170 A CN 113139170A CN 202010053348 A CN202010053348 A CN 202010053348A CN 113139170 A CN113139170 A CN 113139170A
- Authority
- CN
- China
- Prior art keywords
- authentication
- character string
- voucher
- attribute
- bloom vector
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 102
- 239000013598 vector Substances 0.000 claims abstract description 226
- 230000005540 biological transmission Effects 0.000 abstract description 6
- 230000006870 function Effects 0.000 description 17
- 238000004891 communication Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本申请公开了一种生成鉴权凭证和鉴权的方法、装置和设备。本申请提供的生成鉴权凭证的方法,在生成鉴权凭证时,首先,获取鉴权属性字符串,并根据鉴权属性字符串和初始布隆向量,生成布隆向量。然后,基于布隆向量生成鉴权凭证。这样,使得生成的鉴权凭证的长度较小,从而,可以减少传输鉴权凭证时的带宽的消耗,改善服务系统的性能。
Description
技术领域
本申请涉及通信技术领域,特别涉及一种生成鉴权凭证和鉴权的方法、装置和设备。
背景技术
在一个服务系统中,一般包括用户设备、资源服务器和认证服务器。当用户设备想要访问资源服务器提供的资源时,需要先通过认证服务器的认证,认证通过后,认证服务器会生成鉴权凭证,并将生成的鉴权凭证颁发给用户设备。这样,用户设备可以携带该鉴权凭证去访问资源服务器的资源,则资源服务器可以依据鉴权凭证确定该用户设备是否有对相应资源做相应操作的权限。
相关技术中,鉴权凭证的格式通常为基于JavaScript语言的轻量级的数据交换格式JSON(JavaScript Object Notation),在JSON中包括多个鉴权属性对象(object),每个鉴权属性对象包括鉴权所需的一种鉴权属性的信息,导致生成的鉴权凭证的长度过长。而鉴权凭证需要频繁的在网络中传输,所以过长的鉴权凭证会大量的消耗带宽,对服务系统的性能造成影响。
发明内容
本申请实施例提供了一种生成鉴权凭证和鉴权的方法、装置和设备,可以用于服务系统中,通过本申请实施例提供的生成鉴权凭证的方法生成的鉴权凭证的长度较小,从而减少了传输鉴权凭证时的带宽消耗,减小了对服务系统的性能的影响。所述生成鉴权凭证和鉴权的方法、装置和设备如下所述:
第一方面,提供了一种生成鉴权凭证的方法,该方法包括:获取鉴权属性字符串。根据鉴权属性字符串和初始布隆向量,生成布隆向量,在该布隆向量中包括鉴权属性字符串的信息。根据布隆向量生成鉴权凭证。
其中,鉴权属性字符串的格式可以为键值对格式。鉴权属性字符串可以包括多个键值对,每个键值对代表一个“鉴权属性名:属性值”形式的字符串。
初始布隆向量和布隆向量均为布隆过滤器中的二进制向量,在布隆过滤器中包括一系列的哈希函数和一个二进制向量。初始布隆向量中的所有比特位的值均为0,布隆向量中有的比特位的值被置位为1。
基于鉴权属性字符串和初始布隆向量,生成布隆向量,可以理解为将鉴权属性字符串的信息存储至初始布隆向量中,得到包括鉴权属性字符串的信息的布隆向量。存储时,可以将每个键值对的信息(即每个“鉴权属性名:属性值”形式的字符串),分别存储到初始布隆向量中。
鉴权凭证的格式可以为JSON(JavaScript Object Notation)格式。
本申请实施例所示的方案,通过获取鉴权属性字符串,并基于鉴权属性字符串和初始布隆向量生成布隆向量,然后,根据布隆向量生成鉴权凭证,使得生成的鉴权凭证的长度较小,从而,减少了传输鉴权凭证时的带宽的消耗,改善了服务系统的性能。
在一种可能的实现方式中,鉴权属性字符串包括一个或多个键值对,每个键值对表示一种鉴权属性。每个键值对可以为一个字符串,例如,“user_id:id_value”。多个键值对的键名可以互不相同。
鉴权属性字符串中包括的所有键值对表示的鉴权属性,可以为认证服务器(或资源服务器)根据用户信息获取的所有鉴权属性,也可以为所有鉴权属性中的一部分鉴权属性。
在一种可能的实现方式中,获取鉴权属性字符串,包括:接收认证请求,其中,认证请求中携带用户信息。对认证请求进行认证。如果认证通过,根据用户信息,获取鉴权属性字符串。
其中,用户信息可以包括账号信息和密码信息等。
本申请实施例所示的方案,在用户设备需要访问资源服务器提供的资源时,需要先经过认证服务器(或资源服务器)的认证,则用户设备向认证服务器(或资源服务器)发送认证请求。
认证服务器(或资源服务器)接收认证请求,并根据认证请求中携带的用户信息对认证请求进行认证,认证通过后,根据用户信息获取鉴权属性字符串。
在认证服务器(或资源服务器)中存储有用户信息对应的鉴权属性信息,认证服务器可以根据认证请求中携带的用户信息,获取对应的鉴权属性信息。这些鉴权属性信息一般以鉴属性对象的形式存储,则还需要从鉴权属性对象中提取鉴权属性字符串。
在一种可能的实现方式中,根据用户信息,获取鉴权属性字符串,包括:基于用户信息生成初始鉴权凭证,该初始鉴权凭证包括鉴权属性对象。当初始鉴权凭证的长度大于目标长度阈值时,从鉴权属性对象中提鉴权属性字符串。
其中,初始鉴权凭证可以为JSON格式的鉴权凭证。
目标长度阈值可以是根据后续采用的初始布隆向量或布隆向量的长度确定的。目标长度阈值应当不小于后续基于编码处理后的布隆向量生成的鉴权凭证的长度。
本申请实施例所示的方案,在认证通过后,认证服务器(或资源服务器)可以获取用户信息对应的鉴权属性对象,然后,生成包括鉴权属性对象的初始鉴权凭证。
然后,对初始鉴权凭证的长度进行判断,如果确定出的初始鉴权凭证的长度大于目标长度阈值,则说明初始鉴权凭证的长度过长,则可以从鉴权属性对象中提取鉴权属性字符串,以便于后续的处理。
如果确定出的初始鉴权凭证的长度小于目标长度阈值,则说明初始鉴权凭证的长度并未过长,则可以不进行提取鉴权属性字符串的处理,而可以直接将生成的初始鉴权凭证作为鉴权凭证。
通过设置先生成初始鉴权凭证,然后基于初始鉴权凭证的长度判断是否提取鉴权属性字符,可以防止根据包括鉴权属性字符串信息的布隆向量生成的鉴权凭证的长度反而大于初始鉴权凭证的长度的现象的发生,也可以防止初始鉴权凭证的长度只略小于鉴权凭证的长度,使得不值得进行鉴权属性字符串的提取的处理的现象的发生,减小了对计算机资源的浪费。
在一种可能的实现方式中,根据布隆向量生成鉴权凭证,包括:对布隆向量进行编码处理,获得编码后的布隆向量。根据编码后的布隆向量生成编码对象。将初始鉴权凭证中的鉴权属性对象用编码对象替换,得到鉴权凭证。
其中,编码处理可以为Base64Url编码处理,也可以为Base64编码等其它编码处理。
本申请实施例所示的方案,对布隆向量进行编程处理后,可以得到编码后的布隆向量,编码后的布隆向量可以为一个字符串。然后,将编码后的布隆向量作为“键值”,并设置一个“键名”,从而,根据“键名”和“键值”构成了一个编码对象,编码对象与初始鉴权凭证中的鉴权属性对象的格式相同。
生成编码对象之后,使用编码对象替换初始鉴权凭证中的鉴权属性对象,得到鉴权凭证。
通过使用编码对象替换初始鉴权凭证中的鉴权属性对象,使得生成的鉴权凭证的长度小于初始鉴权凭证的长度,从而,减少传输鉴权凭证时的带宽的消耗,改善了服务系统的性能。
在一种可能的实现方式中,初始布隆向量和布隆向量均为固定长度的向量,初始布隆向量的长度等于布隆向量的长度。
本申请实施例所示的方案,由于初始布隆向量和布隆向量的长度是固定不变且相同的,所以布隆向量的长度不会随着所存储的鉴权属性字符串的信息的增加而变长,而由于布隆向量定长,则对布隆向量编码处理后的字符串的长度也是定长的。所以,根据定长的字符串后续生成的编码对象也是定长的。这样,使用该鉴权对象替换了多个鉴权属性对象的鉴权凭证也是定长的。
在一种可能的实现方式中,鉴权凭证中还包括认证方法信息和鉴权凭证的有效时间信息。
本申请实施例所示的方案,在鉴权凭证中还可以包括认证方法信息和鉴权凭证的有效时间信息。有效时间信息表示该鉴权凭证在哪个时间段内有效,如果超出这一时间段,则该鉴权凭证失效。认证方法信息表示认证服务器(或资源服务器)对用户设备进行认证时采用的方法。
在一种可能的实现方式中,鉴权凭证还包括其他鉴权属性对象。
其中,其他鉴权属性对象为不适合存储在布隆向量中的鉴权属性对象。
本申请实施例所示的方案,在实际应用中,可能会存在某些鉴权属性对应的鉴权属性字符串的信息不适合存储在布隆向量中。对于这些鉴权属性,可以仍然按照现有的鉴权属性对象的形式包括在鉴权凭证中。
而这些其他鉴权属性对象的鉴权也可以通过现有的鉴权方式进行鉴权。
第二方面,提供了一种鉴权的方法,该方法包括,接收业务请求,在业务请求中携带鉴权凭证,鉴权凭证中包括编码对象。根据编码对象获得布隆向量,在布隆向量中包括鉴权属性字符串的信息。获取基准鉴权属性字符串。基于基准鉴权属性字符和布隆向量,对鉴权凭证进行鉴权。
其中,业务请求中携带的鉴权凭证可以为第一方面提供的生成鉴权凭证的方法生成的鉴权凭证。
编码对象可以包括“键名”和“键值”,该“键值”可以为编码后的布隆向量。
基准鉴权属性字符串为符合鉴权规则字符串。
本申请实施例所示的方案,在用户设备获取到鉴权凭证之后,当用户设备想要对资源服务器提供的资源进行访问时,可以向资源服务器发送携带有鉴权凭证的业务请求,则资源服务器接收业务请求。
在资源服务器接收到业务请求后,根据业务请求中携带的鉴权凭证中的编码对象获得布隆向量。首先,根据编码对象的“键名”识别出编码对象,然后,对编码对象中的“键值”进行解码处理,得到布隆向量。
然后,资源服务器获取基准鉴权属性字符串。资源服务器中一般以JSON格式的基准鉴权属性对象的形式存储鉴权规则,所以,在获取到基准鉴权属性对象之后,还需要从中提取出基准鉴权属性字符串。
最后,基于基准鉴权属性字符串和布隆向量,对鉴权凭证进行鉴权。也即,查询布隆向量中是否存储有基准鉴权属性字符串的信息,如果存储有,则说明基准鉴权属性字符串与对应的鉴权属性字符串相同,则确定布隆向量对应的鉴权属性字符串通过鉴权。
如果鉴权凭证包含的所有鉴权属性都通过鉴权,且鉴权凭证的其余信息(如有效时间信息)符合鉴权规则,则确定鉴权凭证鉴权通过。资源服务器即可响应业务请求。
通过在服务系统中使用本申请提供的生成鉴权凭证的方法生成鉴权凭证,并使用本申请提供的鉴权的方法对鉴权凭证进行鉴权,减小了传输鉴权凭证时网络带宽的消耗,改善了服务系统的性能。
在一种可能的实现方式中,基于基准鉴权属性字符串和布隆向量,对鉴权凭证进行鉴权,包括,计算基准属性字符串在布隆向量中的位置信息。根据位置信息判断布隆向量中是否包括基准鉴权属性字符串的信息。若布隆向量中包括基准鉴权属性字符串的信息,则布隆向量对应的鉴权属性字符串通过鉴权。
本申请实施例所示的方案,在基于基准鉴权属性字符串和布隆向量,对鉴权凭证进行鉴权时,首先,需要计算基准鉴权属性字符串在布隆向量中的位置信息。计算位置信息的方法可以为,对基准鉴权属性字符串做哈希处理,确定多个比特位,该多个比特位即为基准鉴权属性字符串在布隆向量中的位置信息。
然后,根据位置信息判断布隆向量中是否包括基准鉴权属性字符串的信息。具体的,查询布隆向量中在上述多个比特位的值是否为1,如果均为1,则说明布隆向量中包括基准鉴权属性字符串的信息,如果不均为1,则说明布隆向量中不包括基准鉴权属性字符串的信息。
若布隆向量中包括基准鉴权属性字符串的信息,则布隆向量对应的鉴权属性字符串通过鉴权。
如果鉴权凭证包含的所有鉴权属性都通过鉴权,且鉴权凭证的其余信息(如有效时间信息)符合鉴权规则,则确定鉴权凭证鉴权通过。资源服务器即可响应业务请求。
在一种可能的实现方式中,基准鉴权属性字符串包括一个或多个键值对,每个键值对表示一种鉴权属性。
本申请实施例所示的方案,基准鉴权属性字符串可以包括一个键值对,也可以包括多个键值对,每个键值对表示一种鉴权属性,每个键值对可以为一个字符串。基准鉴权属性字符串所包括的键值对的键名可以是互不相同的。基准鉴权属性字符串中的所有键值对表示的鉴权属性,可以为资源服务器预先存储的鉴权规则中所涉及的所有鉴权属性,也可以是该所有鉴权属性中的一部分鉴权属性。
在一种可能的实现方式中,鉴权凭证中还包括认证方法信息和鉴权凭证的有效时间信息。
本申请实施例所示的方案,在鉴权凭证中还可以包括认证方法信息和鉴权凭证的有效时间信息。有效时间信息表示该鉴权凭证在哪个时间段内有效,如果超出这一时间段,则该鉴权凭证失效。认证方法信息表示认证服务器(或资源服务器)对用户设备进行认证时采用的方法。
在一种可能的实现方式中,鉴权凭证还包括其他鉴权属性对象。
其中,其他鉴权属性对象为不适合存储在布隆向量中的鉴权属性对象。
本申请实施例所示的方案,在实际应用中,可能会存在某些鉴权属性对应的鉴权属性字符串不适合存储在布隆向量中。对于这些鉴权属性,可以仍然按照现有的鉴权属性对象的形式包括在鉴权凭证中。而这些鉴权属性对象的鉴权也可以通过现有的鉴权方式进行鉴权。
第三方面,提供了一种生成鉴权凭证的装置,所述装置包括:
获取模块,用于获取鉴权属性字符串;
生成模块,用于根据所述鉴权属性字符串和初始布隆向量,生成布隆向量,所述布隆向量包括所述鉴权属性字符串的信息;
所述生成模块,还用于根据所述布隆向量生成鉴权凭证。
在一种可能的实现方式中,所述鉴权属性字符串包括一个或多个键值对,每个键值对表示一种鉴权属性。
在一种可能的实现方式中,所述获取模块,用于:
接收认证请求,其中,所述认证请求中携带用户信息;
对所述认证请求进行认证;
如果认证通过,根据所述用户信息,获取所述鉴权属性字符串。
在一种可能的实现方式中,所述获取模块,用于:
基于所述用户信息生成初始鉴权凭证,所述初始鉴权凭证包括鉴权属性对象;
当所述初始鉴权凭证的长度大于目标长度阈值时,从所述鉴权属性对象中提取所述鉴权属性字符串。
在一种可能的实现方式中,所述生成模块,还用于:
对所述布隆向量进行编码处理,获得编码后的布隆向量;
根据所述编码处理后的布隆向量生成编码对象;
将所述初始鉴权凭证中的鉴权属性对象用所述编码对象替换,得到所述鉴权凭证。
在一种可能的实现方式中,初始布隆向量和布隆向量均为固定长度的向量,初始布隆向量的长度等于布隆向量的长度。
在一种可能的实现方式中,鉴权凭证中还包括认证方法信息和鉴权凭证的有效时间信息。
在一种可能的实现方式中,所述鉴权凭证还包括其他鉴权属性对象。
第四方面,提供了一种鉴权的装置,所述装置包括:
接收模块,用于接收业务请求,其中,所述业务请求中携带鉴权凭证,所述鉴权凭证中包括编码对象;
获取模块,用于根据所述编码对象获得布隆向量,所述布隆向量中包括鉴权属性字符串的信息;
所述获取模块,还用于获取基准鉴权属性字符串;
鉴权模块,用于基于所述基准鉴权属性字符串和所述布隆向量,对所述鉴权凭证进行鉴权。
在一种可能的实现方式中,所述鉴权模块,用于:
计算所述基准属性字符串在所述布隆向量中的位置信息;
根据所述位置信息判断所述布隆向量中是否包括所述基准鉴权属性字符串的信息;
若所述布隆向量中包括所述基准鉴权属性字符串的信息,则所述布隆向量对应的鉴权属性字符串通过鉴权。
在一种可能的实现方式中,所述基准鉴权属性字符串包括一个或多个键值对,每个键值对表示一种鉴权属性。
在一种可能的实现方式中,基准鉴权属性字符串包括一个或多个键值对,每个键值对表示一种鉴权属性。
在一种可能的实现方式中,鉴权凭证中还包括认证方法信息和鉴权凭证的有效时间信息。
在一种可能的实现方式中,鉴权凭证还包括其他鉴权属性对象。
第五方面,提供了一种服务器,所述服务器包括处理器和存储器;
所述存储器存储有程序代码,当所述程序代码由所述处理器执行,所述处理器执行如第一方面或第二方面所述的方法。
第六方面,提供了一种计算机可读存储介质,包括指令,当所述计算机可读存储介质中的指令由计算设备执行时,所述计算设备执行如第一方面或第二方面所述的方法。
第七方面,提供了一种包含指令的计算机程序产品,当所述计算机程序产品在所述服务器上运行时,所述服务器执行如第一方面或第二方面所述的方法。
附图说明
图1是本申请实施例提供的一种服务系统的示意图;
图2是本申请实施例提供的另一种服务系统的示意图;
图3是本申请实施例提供的一种认证服务器的结构框图;
图4是本申请实施例提供的一种生成鉴权凭证的方法的流程图;
图5是本申请实施例提供的一种布隆过滤器的原理示意图;
图6是本申请实施例提供的一种资源服务器的结构框图;
图7是本申请实施例提供的一种鉴权的方法的流程图;
图8是本申请实施例提供的一种初始鉴权凭证和鉴权凭证的示意图;
图9是本申请实施例提供的一种生成鉴权凭证的装置的结构框图;
图10是本申请实施例提供的一种鉴权的装置的结构框图。
具体实施方式
为了便于对本申请实施例提供的生成鉴权凭证的方法和鉴权的方法进行详细说明,下面对本申请实施例的应用场景进行介绍:
本申请实施例提供的方法可以应用于如图1所示的服务系统中,在该服务系统中包括用户设备、认证服务器和资源服务器,其中,认证服务器和资源服务器可以来自于同一个厂商,也可以来自于不同的厂商,用户设备可以是用户终端,也可以是用户服务器。
当用户设备想要访问资源服务器提供的资源时:
(1)用户设备向认证服务器发送认证请求。
(2)认证服务器基于接收到的认证请求对用户设备进行认证,在认证通过后,生成鉴权凭证。
(3)认证服务器将生成的鉴权凭证发送给用户设备。
(4)用户设备向资源服务器发送携带有鉴权凭证的业务请求。
(5)资源服务器可以根据接收到的鉴权凭证,与预先存储的鉴权规则进行比对,确认用户设备是否有相应的操作权限。如果鉴权通过,说明有操作权限,则资源服务器响应业务请求。
本申请实施例提供的方法还可以应用于如图2所示的服务系统中,在该服务系统中包括用户设备和资源服务器,该资源服务器同时具备了认证服务器的功能,用户设备可以是用户终端,也可以是用户服务器。
当用户设备想要访问资源服务器提供的资源时:
(1)用户设备向资源服务器发送认证请求。
(2)资源服务器基于接收到的认证请求对用户设备进行认证,在认证通过后,生成鉴权凭证。
(3)资源服务器将生成的鉴权凭证发送给用户设备。
(4)用户设备向资源服务器发送携带有鉴权凭证的业务请求。
(5)资源服务器可以根据接收到的鉴权凭证,与预先存储的鉴权规则进行比对,确认用户设备是否有相应的操作权限。如果鉴权通过,说明有操作权限,则资源服务器响应业务请求。
本申请实施例提供的生成鉴权凭证的方法,可以由图1所示的服务系统中的认证服务器或图2所示的服务系统中的资源服务器执行,本申请实施例提供的鉴权的方法可以由图1所示的服务系统中的资源服务器或图2所示的服务系统中的资源服务器执行。下面,对本申请实施例提供的两种方法进行详细说明。
本申请实施例提供了一种生成鉴权凭证的方法,该方法可以由如图1所示的服务系统中的认证服务器实现,即图1中的步骤②,也可以由图2所示的服务系统中的资源服务器实现,即图2中的步骤②。
以认证服务器为例,认证服务器可以包括处理器310和通信接口320,通信接口320可以与处理器310连接,如图3所示。通信接口320可以用于接收消息或数据,例如,可以用于接收用户设备发送的认证请求。通信接口320还可以用于发送消息或数据,例如,可以向用户设备发送生成的鉴权凭证,通信接口320可以包括发射器和接收器,发射器和接收器可以是网卡。处理器310可以是认证服务器的控制中心,利用各种接口和线路连接整个认证服务器的各个部分,如通信接口320等。在本申请中,处理器310可以是CPU(Central ProcessingUnit,中央处理器),可以用于生成鉴权凭证的相关处理,可选的,处理器310可以包括一个或多个处理单元;处理器310可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统,调制解调处理器主要处理无线通信。处理器310还可以是数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件等。认证服务器还可以包括存储器330,存储器330可用于存储软件程序以及模块,处理器310通过读取存储在存储器的软件代码以及模块,从而执行认证服务器的各种功能应用以及数据处理。
需要说明的是,图2中的资源服务器也应具备上述认证服务器所具有的功能与部件。
下面将结合具体实施方式,对图4所示的生成鉴权凭证的方法的处理流程进行详细说明,内容可以如下:
步骤401,获取鉴权属性字符串。
其中,鉴权属性字符串的格式可以为键值对格式,键值对格式即“key:value”或者“属性名:属性值”的格式。
鉴权属性字符串可以包括一个键值对,也可以包括多个键值对,每个键值对表示一种鉴权属性。鉴权属性字符串所包括的键值对的键名可以是互不相同的。鉴权属性字符串中包括的所有键值对表示的鉴权属性,可以为认证服务器(或资源服务器)根据用户信息获取的所有鉴权属性,也可以为所有鉴权属性中的一部分鉴权属性。
在实施中,用户设备需要访问资源服务器提供的资源时,首先先向认证服务器(或资源服务器)发送认证请求,在认证请求中携带有用户信息,如账号信息和密码信息等,认证服务器(或资源服务器)根据接收到的认证请求进行认证。
在认证通过后,认证服务器可以根据用户信息获取鉴权属性字符串。可选的,根据用户信息获取鉴权属性字符串的方法可以至少包括以下两种:
在一种可能的实现方式中,基于用户信息生成初始鉴权凭证,初始鉴权凭证包括鉴权属性对象。当初始鉴权凭证的长度大于目标长度阈值时,从鉴权属性对象中提取所述鉴权属性字符串。
其中,初始鉴权凭证可以为JSON格式的鉴权凭证。
目标长度阈值可以是根据后续采用的初始布隆向量或布隆向量的长度确定的。目标长度阈值应当不小于后续基于编码处理后的布隆向量生成的鉴权凭证的长度。
在实施中,认证服务器中预先存储有用户信息对应的鉴权属性信息,且鉴权属性信息一般采用鉴权属性对象的形式存储。
在认证通过后,认证服务器可以获取用户信息对应的鉴权属性对象,然后,生成包含鉴权属性对象的初始鉴权凭证。生成包含鉴权属性对象的初始鉴权凭证时的方法可以是现有的方法。
然后,对初始鉴权凭证的长度进行判断,如果确定出的初始鉴权凭证的长度大于目标长度阈值,则说明初始鉴权凭证的长度过长,此时应当从鉴权属性对象中提取出鉴权属性字符串,以便于后续的操作。
如图8所示,生成了初始鉴权凭证,并从初始鉴权凭证中包括的鉴权属性对象中提取出了鉴权属性字符串。
如果确定出的初始鉴权凭证的长度小于目标长度阈值,则说明初始鉴权凭证的长度并未过长,则可以不进行提取鉴权属性字符串的处理,而可以直接将生成的初始鉴权凭证作为最终的鉴权凭证。
在另一种可能的实现方式中,可以不必生成初始鉴权凭证,而是直接根据用户信息获取鉴权属性对象,并从获取的鉴权属性对象中提取鉴权属性字符串。
需要说明的是,上述在鉴权属性对象中提取鉴权属性字符串时采用的处理,可以是扁平化处理,扁平化处理也可以称为JSON扁平化。
例如,鉴权属性对象为:
对该鉴权属性对象进行扁平化处理,即可从鉴权属性对象中提取出鉴权属性字符串“user_id:id_value”。
步骤402,根据鉴权属性字符串和初始布隆向量,生成布隆向量,布隆向量包括鉴权属性字符串的信息。
其中,初始布隆向量和布隆向量为布隆过滤器中的二进制向量。布隆过滤器中包括一系列的哈希函数和一个二进制向量,初始布隆向量中的所有比特位的值均为0,布隆向量中有的比特位的值被置为了1。
初始布隆向量和布隆向量可以为固定长度的向量,且初始布隆向量和布隆向量的长度可以相同。在确定初始布隆向量的长度时,需要考虑预计最多存储的鉴权属性字符串,以及,最大可容忍的误判率。
在实施中,根据鉴权属性字符串和初始布隆向量,生成布隆向量,也可以称为,将鉴权属性字符串的信息存储到初始布隆向量中,得到布隆向量。
根据鉴权属性字符串和初始布隆向量,生成布隆向量的具体方法可以如下所述:
对每个鉴权属性的鉴权属性字符串进行哈希处理,得到多个比特位。然后,将初始布隆向量中的该多个比特位的0置为1,则得到布隆向量,该布隆向量中包括鉴权属性字符的信息。
需要说明的是,上述进行哈希处理时使用的哈希函数可以为单个哈希函数,也可以为一系列哈希函数,本申请对此不做限定。
例如,如图5所示,需要将鉴权属性字符串A的信息存储到布隆向量中。首先,使用布隆过滤器中的三个哈希函数对鉴权属性字符串A做哈希处理,得到比特位2、4和7。然后,将初始布隆向量中的比特位2、4和7的0置为1,则鉴权属性字符串A的信息即存储到布隆向量中。
另外,在查询布隆向量中是否存储有鉴权属性字符串A的信息时,需要使用同样的三个哈希函数对鉴权属性字符串A做哈希处理,得到比特位2、4和7。然后,查询布隆向量中的比特位2、4和7处的值是否为1,如果均为1,则说明布隆向量中存储有A,如果不均为1,则说明布隆向量中未存储有A。
步骤403,根据布隆向量生成鉴权凭证。
其中,本申请实施例生成的鉴权凭证也可以称为令牌(token),格式也可以为JSON格式。
在实施中,对布隆向量进行编码处理后,可以得到布隆向量对应的字符串。
根据获取鉴权属性字符串时进行的操作的不同,根据布隆向量生成鉴权凭证的方法也不同,具体的方法可以如下所述:
在一种可能的实现方式中,对布隆向量进行编码处理,获得编码后的布隆向量。根据编码后的布隆向量生成编码对象。将初始鉴权凭证中的鉴权属性对象用编码对象替换,得到鉴权凭证。
其中,对布隆向量进行的编码处理可以为Base64Url编码处理,也可以为Base64编码等其它编码处理。
在实施中,布隆向量进行编码处理后,可以得到一个字符串。将该字符串作为“键值”,并设置一个“键名”,从而,“键名”:“键值”构成了一个编码对象,编码对象与初始鉴权凭证中的鉴权属性对象的格式相同。
例如,“键名”为“bloom_vector”,“键值”为“bloom_filter_in_BASE64URL”,则构成的编码对象为“bloom_vector”:“bloom_filter_in_BASE64URL”。
然后,使用编码对象替换初始鉴权凭证中的鉴权属性对象,即可得到鉴权凭证。
如图8所示,示出了初始鉴权凭证和鉴权凭证。初始鉴权凭证(还可以称为token,具体的,可以称为PKI token)中携带的是鉴权属性对象,鉴权凭证中携带的是编码对象(即图8中的“bloom_vector”:“bloom_filter_in_BASE64URL”)。可见,生成的鉴权凭证的格式与初始鉴权凭证的格式相同,可以均为JSON格式。
在另一种可能的实现方式中,如果未生成初始鉴权凭证,则可以对布隆向量进行编码处理,得到字符串。然后,将该字符串作为“键值”,并设置一个“键名”,从而,根据“键名”:“键值”构成了一个编码对象,编码对象与初始鉴权凭证中的鉴权属性对象的格式相同,例如,“bloom_vector”:“bloom_filter_in_BASE64URL”。最后,可以直接生成包括编码对象的鉴权凭证。
需要说明的是,在鉴权凭证中还包括认证方法信息和鉴权凭证的有效时间信息。其中,有效时间信息表示该鉴权凭证在哪个时间段内有效,如果超出这一时间段,则该鉴权凭证失效,可能需要生成新的鉴权凭证。认证方法信息表示认证服务器(或资源服务器)对用户设备进行认证时采用的方法。
在生成鉴权凭证之后,即可以将鉴权凭证发送给用户设备。
本申请实施例提供了一种生成鉴权凭证的方法,该方法通过基于鉴权属性字符串和初始布隆向量生成布隆向量,并根据布隆向量生成鉴权凭证,可以减小鉴权凭证的长度,从而,减少传输鉴权凭证时的带宽的消耗,改善服务系统的性能。
并且,由于初始布隆向量和布隆向量的长度是固定不变且相同的,所以布隆向量的长度不会随着所存储的鉴权属性字符串的信息的增加而变长,而由于布隆向量定长,则对布隆向量编码处理后的字符串的长度也是定长的。所以,根据定长的字符串后续生成的编码对象也是定长的。这样,使用该鉴权对象替换了多个鉴权属性对象的鉴权凭证也是定长的。
本申请实施例还提供了一种鉴权的方法,该方法可以由资源服务器实现,即图1和图2中的步骤⑤。
资源服务器可以包括处理器610、通信接口620,通信接口620可以与处理器610连接,如图6所示。通信接口620可以用于接收消息或数据,例如,可以用于接收用户设备的业务请求。通信接口620还可以用于发送消息或数据,例如,可以向用户设备发送鉴权结果,通信接口620可以包括发射器和接收器,发射器和接收器可以是网卡。处理器610可以是资源服务器的控制中心,利用各种接口和线路连接整个资源服务器的各个部分,如通信接口620等。在本申请中,处理器610可以是CPU(Central Processing Unit,中央处理器),可以用于鉴权的相关处理,可选的,处理器610可以包括一个或多个处理单元;处理器610可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统,调制解调处理器主要处理无线通信。处理器610还可以是数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件等。资源服务器还可以包括存储器630,存储器630可用于存储软件程序以及模块,处理器610通过读取存储在存储器的软件代码以及模块,从而执行资源服务器的各种功能应用以及数据处理。
下面将结合具体实施方式,对图7所示的鉴权的方法的处理流程进行详细说明,内容可以如下:
步骤701,接收业务请求。
其中,业务请求中携带有鉴权凭证,鉴权凭证中包括编码对象。
业务请求中携带的鉴权凭证可以为本申请实施例提供的生成鉴权凭证的方法生成的鉴权凭证。另外,除了编码对象之外,在鉴权凭证中还可以包括认证方法信息和鉴权凭证的有效时间信息。有效时间信息表示该鉴权凭证在哪个时间段内有效,如果超出这一时间段,则该鉴权凭证失效。认证方法信息表示认证服务器(或资源服务器)对用户设备进行认证时采用的方法。
在实施中,在用户设备获取到鉴权凭证之后,当用户设备想要对资源服务器提供的资源进行访问时,可以向资源服务器发送携带有鉴权凭证的业务请求。
则资源服务器接收业务请求。
步骤702,根据编码对象获得布隆向量,布隆向量中包括鉴权属性字符串的信息。
在实施中,接收到业务请求之后,可以先识别出编码对象,并对编码对象进行解码处理,获得布隆向量。
编码对象可以为键值对形式(如,“bloom_vector”:“bloom_filter_in_BASE64URL”),则资源服务器可以根据“键名”(例如,“bloom_vector”)识别出该键值对为编码对象。然后,对“键值”(例如,“bloom_filter_in_BASE64URL”,该值为一个字符串)进行解码处理,得到布隆向量。其中,该解码处理与生成鉴权凭证时的编码处理相对应,例如,可以为Base64Url解码处理或Base64解码处理等。
步骤703,获取基准鉴权属性字符串。
其中,基准鉴权属性字符串的格式为键值对格式,键值对格式即“key:value”或者“属性名:属性值”的格式。
基准鉴权属性字符串可以包括一个键值对,也可以包括多个键值对,每个键值对表示一种鉴权属性,每个键值对可以为一个字符串。基准鉴权属性字符串所包括的键值对的键名可以是互不相同的。基准鉴权属性字符串中的所有键值对表示的鉴权属性,可以为资源服务器预先存储的鉴权规则中所涉及的所有鉴权属性,也可以是该所有鉴权属性中的一部分鉴权属性。
在实施中,资源服务器一般以JSON格式的基准鉴权属性对象的形式存储鉴权规则,为了便于后续的鉴权,还需要从JSON格式的基准鉴权属性对象中提取基准鉴权属性字符串。
从基准鉴权属性对象中提取基准鉴权属性字符串时采用的处理,可以是扁平化处理,也可以称为JSON扁平化。
步骤704,基于基准鉴权属性字符串和布隆向量,对鉴权凭证进行鉴权。
在实施中,首先,计算基准鉴权属性字符串在布隆向量中的位置信息,然后,根据位置信息判断布隆向量中是否包括基准鉴权属性字符串的信息。若布隆向量中包括基准鉴权属性字符串的信息,则该布隆向量对应的鉴权属性字符串通过鉴权。
也即,如果某一鉴权属性对应的基准鉴权属性字符串的信息存储在布隆向量中,则说明,该鉴权属性对应的鉴权属性字符串与基准鉴权属性字符串相同,则确定该鉴权属性鉴权通过。
鉴权凭证鉴权通过后,资源服务器即可以响应业务请求。
计算基准鉴权属性字符串在布隆向量中的位置信息,以及根据位置信息判断布隆向量中是否包括基准鉴权属性字符串的信息的具体方法可以如下所述:
对每个鉴权属性的基准鉴权属性字符串进行哈希处理,得到多个比特位。查询布隆向量中该多个比特位的值是否为1。如果多个比特位的值均为1,则确定布隆向量中存储有该基准鉴权属性字符串的信息;如果多个比特位的值不均为1,则确定布隆向量中未存储有该基准鉴权属性字符串的信息。
需要说明的是,查询布隆向量中是否包括基准鉴权属性字符串的信息时使用的哈希函数,应当与生成该鉴权凭证时,将对应的鉴权属性字符串的信息存储至布隆向量时使用的哈希函数一致。所以,如果本申请实施例提供的方法应用在图1所示的服务系统中,则在认证服务器和资源服务器中应当预先配置好一个或一系列相同的哈希函数。
本申请实施例提供的鉴权的方法,可以用于对本申请实施例提供的生成鉴权凭证的方法生成的鉴权凭证进行鉴权。通过在服务系统中使用本申请实施例提供的鉴权凭证,并对该鉴权凭证进行鉴权,减小了传输鉴权凭证时网络带宽的消耗,改善了服务系统的性能。
需要说明的是,如果是图2所示的资源服务器,则该资源服务器中除了可以执行上述701-704及其可选的方法之外,还可以执行上述401-403及其可选的方法。
需要补充说明的是,在实际应用中,可能会存在某些鉴权属性的信息不适合存储在布隆向量中。对于这些鉴权属性,可以按照原有的方式携带这些鉴权属性信息,即可以携带这些鉴权属性对应的鉴权属性对象。而对于这些鉴权属性的鉴权,也可以按照现有的方式进行鉴权。
不适合存储在布隆向量中的鉴权属性可以为在对应的鉴权规则中存在判断逻辑的鉴权属性。例如,对于时间这一鉴权属性,资源服务器规定了一个符合鉴权规则的时间范围,而认证服务器(或资源服务器)获取到的为一个时间点,则如果将时间点对应的鉴权属性字符串的信息存储到初始布隆向量中,则鉴权时,资源服务器根据时间范围生成的基准鉴权属性字符串的信息,肯定未存储在布隆向量中,所以如果根据布隆向量进行鉴权,则这些鉴权属性肯定会鉴权失败。
不适合存储在布隆向量中的鉴权属性还可以为其余一些需要原文的鉴权属性,这些鉴权属性对应的鉴权规则中虽然并不包含逻辑关系,但是,在服务系统中的其余节点的操作或处理中,可能需要读取原文,在这种情况下,在鉴权凭证中也需要携带这些鉴权属性的原文信息(如鉴权属性对象),不过,这些鉴权属性的鉴权属性字符串也可以同时存储在布隆向量中。
另外,通过上述生成鉴权凭证和鉴权的方法的论述可知,本申请实施例提供的生成鉴权凭证和鉴权的方法可以由同一服务器实现,也可以由不同的服务器实现。
基于与生成鉴权凭证的方法相同的技术构思,本申请实施例还提供了一种生成鉴权凭证的装置,如图9所示,该装置包括:
获取模块901,用于获取鉴权属性字符串;
生成模块902,用于根据鉴权属性字符串和初始布隆向量,生成布隆向量,布隆向量包括鉴权属性字符串的信息;
生成模块902,还用于根据布隆向量生成鉴权凭证。
在一种可能的实现方式中,鉴权属性字符串包括一个或多个键值对,每个键值对表示一种鉴权属性。
在一种可能的实现方式中,获取模块901,用于:
接收认证请求,其中,认证请求中携带用户信息;
对认证请求进行认证;
如果认证通过,根据用户信息,获取鉴权属性字符串。
在一种可能的实现方式中,获取模块901,用于:
基于用户信息生成初始鉴权凭证,初始鉴权凭证包括鉴权属性对象;
当初始鉴权凭证的长度大于目标长度阈值时,从鉴权属性对象中提取鉴权属性字符串。
在一种可能的实现方式中,生成模块902,还用于:
对布隆向量进行编码处理,获得编码后的布隆向量;
根据编码处理后的布隆向量生成编码对象;
将初始鉴权凭证中的鉴权属性对象用编码对象替换,得到鉴权凭证。
在一种可能的实现方式中,初始布隆向量和布隆向量均为固定长度的向量,初始布隆向量的长度等于布隆向量的长度。
在一种可能的实现方式中,鉴权凭证中还包括认证方法信息和鉴权凭证的有效时间信息。
在一种可能的实现方式中,鉴权凭证还包括其他鉴权属性对象。
需要说明的是,上述获取模块901和生成模块902可以由处理器实现,或者处理器配合存储器来实现,或者,处理器执行存储器中的程序指令来实现。
还需要说明的是,上述实施例提供的生成鉴权凭证的装置在生成鉴权凭证时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将服务器的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的生成鉴权凭证的装置与生成鉴权凭证的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
基于与鉴权的方法相同的技术构思,本申请实施例还提供了一种鉴权的装置,如图10所示,该装置包括:
接收模块1001,用于接收业务请求,其中,业务请求中携带鉴权凭证,鉴权凭证中包括编码对象;
获取模块1002,用于根据编码对象获得布隆向量,布隆向量中包括鉴权属性字符串的信息;
获取模块1002,还用于获取基准鉴权属性字符串;
鉴权模块1003,用于基于基准鉴权属性字符串和布隆向量,对鉴权凭证进行鉴权。
在一种可能的实现方式中,鉴权模块1003,用于:
计算基准属性字符串在布隆向量中的位置信息;
根据位置信息判断布隆向量中是否包括基准鉴权属性字符串的信息;
若布隆向量中包括基准鉴权属性字符串的信息,则布隆向量对应的鉴权属性字符串通过鉴权。
在一种可能的实现方式中,基准鉴权属性字符串包括一个或多个键值对,每个键值对表示一种鉴权属性。
在一种可能的实现方式中,初始布隆向量和布隆向量均为固定长度的向量,初始布隆向量的长度等于布隆向量的长度。
在一种可能的实现方式中,鉴权凭证中还包括认证方法信息和鉴权凭证的有效时间信息。
在一种可能的实现方式中,鉴权凭证还包括其他鉴权属性对象。
需要说明的是,上述接收模块1001、获取模块1002和鉴权模块1003可以由处理器实现,或者处理器配合存储器来实现,或者,处理器执行存储器中的程序指令来实现。
还需要说明的是,上述实施例提供的鉴权的装置在鉴权时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将服务器的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的鉴权的装置与鉴权的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现,当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令,在设备上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机指令可以存储在计算机可读存储介质中。所述计算机可读存储介质可以是设备能够存取的任何可用介质或者是包含一个或多个可用介质集成的数据存储设备。所述可用介质可以是磁性介质(如软盘、硬盘和磁带等),也可以是光介质(如数字视盘(Digital Video Disk,DVD)等),或者半导体介质(如固态硬盘等)。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (18)
1.一种生成鉴权凭证的方法,其特征在于,所述方法包括:
获取鉴权属性字符串;
根据所述鉴权属性字符串和初始布隆向量,生成布隆向量,所述布隆向量包括所述鉴权属性字符串的信息;
根据所述布隆向量生成鉴权凭证。
2.根据权利要求1所述的方法,其特征在于,所述鉴权属性字符串包括一个或多个键值对,每个键值对表示一种鉴权属性。
3.根据权利要求1或2任一项所述的方法,其特征在于,所述获取鉴权属性字符串,包括:
接收认证请求,其中,所述认证请求中携带用户信息;
对所述认证请求进行认证;
如果认证通过,根据所述用户信息,获取所述鉴权属性字符串。
4.根据权利要求3所述的方法,其特征在于,所述根据所述用户信息,获取所述鉴权属性字符串,包括:
基于所述用户信息生成初始鉴权凭证,所述初始鉴权凭证包括鉴权属性对象;
当所述初始鉴权凭证的长度大于目标长度阈值时,从所述鉴权属性对象中提取所述鉴权属性字符串。
5.根据权利要求4所述的方法,其特征在于,所述根据所述布隆向量生成鉴权凭证,包括:
对所述布隆向量进行编码处理,获得编码后的布隆向量;
根据所述编码后的布隆向量生成编码对象;
将所述初始鉴权凭证中的鉴权属性对象用所述编码对象替换,得到所述鉴权凭证。
6.一种鉴权的方法,其特征在于,所述方法包括:
接收业务请求,其中,所述业务请求中携带鉴权凭证,所述鉴权凭证中包括编码对象;
根据所述编码对象获得布隆向量,所述布隆向量中包括鉴权属性字符串的信息;
获取基准鉴权属性字符串;
基于所述基准鉴权属性字符和所述布隆向量,对所述鉴权凭证进行鉴权。
7.根据权利要求6所述的方法,其特征在于,所述基于所述基准鉴权属性字符串和所述布隆向量,对所述鉴权凭证进行鉴权,包括:
计算所述基准属性字符串在所述布隆向量中的位置信息;
根据所述位置信息判断所述布隆向量中是否包括所述基准鉴权属性字符串的信息;
若所述布隆向量中包括所述基准鉴权属性字符串的信息,则所述布隆向量对应的鉴权属性字符串通过鉴权。
8.根据权利要求6或7任一项所述的方法,其特征在于,所述基准鉴权属性字符串包括一个或多个键值对,每个键值对表示一种鉴权属性。
9.一种生成鉴权凭证的装置,其特征在于,所述装置包括:
获取模块,用于获取鉴权属性字符串;
生成模块,用于根据所述鉴权属性字符串和初始布隆向量,生成布隆向量,所述布隆向量包括所述鉴权属性字符串的信息;
所述生成模块,还用于根据所述布隆向量生成鉴权凭证。
10.根据权利要求9所述的装置,其特征在于,所述鉴权属性字符串包括一个或多个键值对,每个键值对表示一种鉴权属性。
11.根据权利要求9或10任一项所述的装置,其特征在于,所述获取模块,用于:
接收认证请求,其中,所述认证请求中携带用户信息;
对所述认证请求进行认证;
如果认证通过,根据所述用户信息,获取所述鉴权属性字符串。
12.根据权利要求11所述的装置,其特征在于,所述获取模块,用于:
基于所述用户信息生成初始鉴权凭证,所述初始鉴权凭证包括鉴权属性对象;
当所述初始鉴权凭证的长度大于目标长度阈值时,从所述鉴权属性对象中提取所述鉴权属性字符串。
13.根据权利要求12所述的装置,其特征在于,所述生成模块,还用于:
对所述布隆向量进行编码处理,获得编码后的布隆向量;
根据所述编码处理后的布隆向量生成编码对象;
将所述初始鉴权凭证中的鉴权属性对象用所述编码对象替换,得到所述鉴权凭证。
14.一种鉴权的装置,其特征在于,所述装置包括:
接收模块,用于接收业务请求,其中,所述业务请求中携带鉴权凭证,所述鉴权凭证中包括编码对象;
获取模块,用于根据所述编码对象获得布隆向量,所述布隆向量中包括鉴权属性字符串的信息;
所述获取模块,还用于获取基准鉴权属性字符串;
鉴权模块,用于基于所述基准鉴权属性字符串和所述布隆向量,对所述鉴权凭证进行鉴权。
15.根据权利要求14所述的装置,其特征在于,所述鉴权模块,用于:
计算所述基准属性字符串在所述布隆向量中的位置信息;
根据所述位置信息判断所述布隆向量中是否包括所述基准鉴权属性字符串的信息;
若所述布隆向量中包括所述基准鉴权属性字符串的信息,则所述布隆向量对应的鉴权属性字符串通过鉴权。
16.根据权利要求14或15任一项所述的装置,其特征在于,所述基准鉴权属性字符串包括一个或多个键值对,每个键值对表示一种鉴权属性。
17.一种服务器,其特征在于,所述服务器包括处理器和存储器;
所述存储器存储有程序代码,当所述程序代码由所述处理器执行,所述处理器执行权利要求1-5或6-8中任一项所述的方法。
18.一种计算机可读存储介质,其特征在于,包括指令,当所述计算机可读存储介质中的指令由计算设备执行时,所述计算设备执行所述权利要求1-5或6-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010053348.2A CN113139170A (zh) | 2020-01-17 | 2020-01-17 | 生成鉴权凭证和鉴权的方法、装置和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010053348.2A CN113139170A (zh) | 2020-01-17 | 2020-01-17 | 生成鉴权凭证和鉴权的方法、装置和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113139170A true CN113139170A (zh) | 2021-07-20 |
Family
ID=76809600
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010053348.2A Pending CN113139170A (zh) | 2020-01-17 | 2020-01-17 | 生成鉴权凭证和鉴权的方法、装置和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113139170A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101390068A (zh) * | 2006-02-23 | 2009-03-18 | 微软公司 | 抗客户端攻击的网络钓鱼检测 |
CN107733653A (zh) * | 2017-10-09 | 2018-02-23 | 用友网络科技股份有限公司 | 用户权限鉴定方法及系统和计算机设备 |
US10051001B1 (en) * | 2015-07-31 | 2018-08-14 | Palo Alto Networks, Inc. | Efficient and secure user credential store for credentials enforcement using a firewall |
CN108964885A (zh) * | 2017-05-27 | 2018-12-07 | 华为技术有限公司 | 鉴权方法、装置、系统和存储介质 |
US10172001B1 (en) * | 2017-10-30 | 2019-01-01 | International Business Machines Corporation | Authentication mechanism |
CN109525583A (zh) * | 2018-11-26 | 2019-03-26 | 中国科学院数据与通信保护研究教育中心 | 一种用于第三方提供身份管理的服务系统的虚假凭证检测方法及系统 |
CN110535807A (zh) * | 2018-05-24 | 2019-12-03 | 腾讯科技(深圳)有限公司 | 一种业务鉴权方法、装置和介质 |
-
2020
- 2020-01-17 CN CN202010053348.2A patent/CN113139170A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101390068A (zh) * | 2006-02-23 | 2009-03-18 | 微软公司 | 抗客户端攻击的网络钓鱼检测 |
US10051001B1 (en) * | 2015-07-31 | 2018-08-14 | Palo Alto Networks, Inc. | Efficient and secure user credential store for credentials enforcement using a firewall |
CN108964885A (zh) * | 2017-05-27 | 2018-12-07 | 华为技术有限公司 | 鉴权方法、装置、系统和存储介质 |
CN107733653A (zh) * | 2017-10-09 | 2018-02-23 | 用友网络科技股份有限公司 | 用户权限鉴定方法及系统和计算机设备 |
US10172001B1 (en) * | 2017-10-30 | 2019-01-01 | International Business Machines Corporation | Authentication mechanism |
CN110535807A (zh) * | 2018-05-24 | 2019-12-03 | 腾讯科技(深圳)有限公司 | 一种业务鉴权方法、装置和介质 |
CN109525583A (zh) * | 2018-11-26 | 2019-03-26 | 中国科学院数据与通信保护研究教育中心 | 一种用于第三方提供身份管理的服务系统的虚假凭证检测方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111343162B (zh) | 系统安全登录方法、装置、介质及电子设备 | |
CN104301875A (zh) | 短消息处理方法和装置 | |
CN104899499A (zh) | 基于互联网图片搜索的Web验证码生成方法 | |
CN112437060B (zh) | 一种数据传输方法、装置、计算机设备及存储介质 | |
CN105359155A (zh) | 使用压缩破坏口令攻击 | |
CN115664859B (zh) | 基于云打印场景下的数据安全分析方法、装置、设备及介质 | |
CN108234454B (zh) | 一种身份认证方法、服务器及客户端设备 | |
CN111367923A (zh) | 数据处理方法、装置、节点设备及存储介质 | |
CN114513350A (zh) | 身份校验方法、系统和存储介质 | |
CN113139170A (zh) | 生成鉴权凭证和鉴权的方法、装置和设备 | |
CN108600266B (zh) | 一种声明过滤认证方法及认证系统 | |
CN111324914B (zh) | 文件的传输方法、装置、服务器、设备和介质 | |
CN113220949B (zh) | 一种隐私数据识别系统的构建方法及装置 | |
CN115297104A (zh) | 文件上传方法、装置、电子设备和存储介质 | |
CN112699366B (zh) | 跨平台免登安全通讯方法、装置和电子设备 | |
CN113342811A (zh) | HBase表格数据处理方法及装置 | |
CN113849801A (zh) | 单点登录方法、装置、计算机设备及存储介质 | |
CN109145645B (zh) | 一种保护安卓手机中短信验证码的方法 | |
CN112434231A (zh) | 一种数据处理方法、装置及电子设备 | |
CN115001833B (zh) | 登录方法及装置 | |
KR101811285B1 (ko) | 부가인증장치에 기반한 클라우드 시스템의 인증 방법 및 그 클라우드 시스템 | |
CN114091119A (zh) | 信息处理方法、装置、电子设备及计算机可读存储介质 | |
CN116828404B (zh) | 行业短信准确发送方法、装置、电子设备和介质 | |
US10949617B1 (en) | System for differentiating encoding of text fields between networked services | |
CN114024688A (zh) | 网络请求方法、网络认证方法、终端设备和服务端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220216 Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province Applicant after: Huawei Cloud Computing Technology Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Applicant before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
TA01 | Transfer of patent application right |