System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及大数据,尤其涉及一种访问请求的处理方法、装置和系统。
技术介绍
1、当今时代下,各种服务平台的访问资源的信息量呈指数级的爆炸增长,用户通常在获取访问资源之前、利用终端与服务平台进行首次交互,由服务平台认可的授权服务基于协定协议向终端的用户账号授权、发放访问令牌,从而后续访问过程中,用户无需输入用户名、密码等信息,即可获取平台对访问请求所携带的访问令牌验证成功后返回的访问资源。
2、现有的授权服务在对用户账号进行授权时,协定协议并未约束访问令牌的生成方式,只要令牌唯一、不连续即可,并将生成的访问令牌持久化至数据库或者缓存中间件,以便后期调用进行验证。
3、在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:
4、由于访问令牌的生成规范过于随意,并无统一规范和体系的令牌策略,使得令牌漏洞较大、容易破解,导致访问资源安全程度过低、存在较高的泄露风险;访问令牌的持久化存储会消耗较大的系统存储资源;平台每次验证访问令牌皆需调用数据库或者中间件的令牌资源进行对比自检,一旦存在网络波动、调用服务性能不稳等情况,就会导致调用失败中断访问。
技术实现思路
1、有鉴于此,本专利技术实施例提供一种访问请求的处理方法、装置和系统,能够通过混淆加密的策略生成访问令牌,规范访问令牌结构,使得访问令牌标准化,令牌无需存储和调用,降低系统的存储成本的同时,提高访问令牌的安全性,防止令牌被破解,保证资源访问的流畅和资源的保密性,降低资源泄露风险。
>2、为实现上述目的,根据本专利技术实施例的一个方面,提供了一种访问请求的处理方法,所述方法包括:
3、接收第二服务端的访问请求;其中,所述访问请求包括用户标识和授权范围;
4、响应于所述访问请求,根据所述用户标识和所述授权范围,生成初始令牌;
5、利用加密密钥对所述初始令牌进行加密,并将所述加密密钥插入加密后的初始令牌,得到混淆令牌;
6、将所述混淆令牌和预设的位置标识进行组合,生成所述访问令牌并发送给所述第二服务端。
7、可选地,所述利用加密密钥对所述初始令牌进行加密,并将所述加密密钥插入加密后的初始令牌,得到混淆令牌,包括:
8、随机生成所述加密密钥和所述位置标识;
9、利用所述加密密钥对所述初始令牌进行对称加密,得到加密令牌;
10、根据所述位置标识,确定所述加密令牌的插入位置;
11、将所述加密密钥插入所述插入位置,得到所述混淆令牌。
12、可选地,所述随机生成所述加密密钥和所述位置标识,包括:
13、根据加密后的初始令牌的字符串长度,确定可选加密位置;
14、从所述可选加密位置中随机选取目标位置,并根据所述目标位置相对于所述字符串长度的顺序,确定所述位置标识。
15、可选地,所述根据所述用户标识和所述授权范围,生成初始令牌,包括:
16、根据所述初始令牌的令牌类型,生成令牌头部;其中,所述令牌头部包括数据体类型和签名算法;
17、创建所述初始令牌的颁发时间戳和过期时间戳;
18、根据所述数据体类型,由所述用户标识、所述授权范围、所述颁发时间戳和所述过期时间戳组成令牌数据体;
19、利用所述签名算法对所述令牌头部和所述令牌数据体进行加密签名处理,得到令牌签名;
20、将所述令牌头部、所述令牌数据体和所述令牌签名封装为所述初始令牌。
21、可选地,还包括:
22、接收所述第二服务端的刷新请求;其中,所述刷新请求包括待刷新访问令牌;
23、对所述待刷新访问令牌进行解析,得到所述待刷新访问令牌的过期时间戳;
24、判断所述待刷新访问令牌的过期时间戳是否大于等于当前时间戳,在所述待刷新访问令牌的过期时间戳大于等于所述当前时间戳的情况下,创建所述待刷新访问令牌的待刷新的颁发时间戳和待刷新的过期时间戳;
25、利用所述待刷新的颁发时间戳、所述待刷新的过期时间戳、所述用户标识和所述授权范围,重生成刷新后的访问令牌。
26、可选地,所述创建所述初始令牌的颁发时间戳和过期时间戳,包括:
27、根据所述访问请求的接收时间和所述初始令牌的封装时间,创建所述颁发时间戳;其中,所述封装时间是根据多个历史初始令牌的封装过程确定的;
28、将预设的所述访问令牌的有效期叠加至所述颁发时间戳,得到所述过期时间戳。
29、根据本专利技术实施例的再一个方面,提供了一种访问请求的处理方法,所述方法应用于第三服务端,所述方法包括:
30、接收第二服务端发送的携带访问令牌的访问请求;
31、取出所述访问令牌的位置标识,得到混淆令牌,并根据所述位置标识,定位所述混淆令牌的加密密钥;
32、利用所述加密密钥对所述混淆令牌进行拆分和解密,得到初始令牌;其中,所述初始令牌包括用户标识和授权范围;
33、根据所述用户标识,查找与所述授权范围匹配的目标访问资源,将所述目标访问资源返回给所述第二服务端以响应所述访问请求。
34、可选地,所述利用所述加密密钥对所述混淆令牌进行拆分和解密,得到初始令牌,包括:
35、剔除所述混淆令牌中的所述加密密钥,得到加密令牌;
36、利用所述加密密钥对所述加密令牌进行对称解密;
37、根据所述对称解密得到的初始令牌的令牌头部的签名算法,对所述初始令牌的令牌签名进行校验;
38、在所述初始令牌的校验结果为校验成功的情况下,从所述初始令牌的令牌数据体中确定所述用户标识和所述授权范围。
39、可选地,所述根据所述对称解密得到的初始令牌的令牌头部的签名算法,对所述初始令牌的令牌签名进行校验,包括:
40、利用所述签名算法对解密得到的初始令牌的令牌头部和令牌数据体进行加密签名处理,得到签名结果;
41、将所述签名结果与所述令牌签名进行对比,在所述签名结果与所述令牌签名相同的情况下,确定所述初始令牌的校验结果为校验成功。
42、根据本专利技术实施例的另一个方面,提供了一种访问请求的处理装置,其特征在于,所述装置应用于第一服务端,所述装置包括:
43、接收模块,用于接收第二服务端的访问请求;其中,所述访问请求包括用户标识和授权范围;
44、生成模块,用于响应于所述访问请求,根据所述用户标识和所述授权范围,生成初始令牌;
45、混淆模块,用于利用加密密钥对所述初始令牌进行加密,并将所述加密密钥插入加密后的初始令牌,得到混淆令牌;
46、组合模块,用于将所述混淆令牌和预设的位置标识进行组合,生成所述访问令牌并发送给所述第二服务端。
47、根据本专利技术实施例的还一个方面,提供了一种访问请求的处理装置,所述装置应用于第三服务端,所述装置包括:
48、本文档来自技高网...
【技术保护点】
1.一种访问请求的处理方法,其特征在于,所述方法应用于第一服务端,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述利用加密密钥对所述初始令牌进行加密,并将所述加密密钥插入加密后的初始令牌,得到混淆令牌,包括:
3.根据权利要求2所述的方法,其特征在于,所述随机生成所述加密密钥和所述位置标识,包括:
4.根据权利要求1所述的方法,其特征在于,所述根据所述用户标识和所述授权范围,生成初始令牌,包括:
5.根据权利要求4所述的方法,其特征在于,还包括:
6.根据权利要求4所述的方法,其特征在于,所述创建所述初始令牌的颁发时间戳和过期时间戳,包括:
7.一种访问请求的处理方法,其特征在于,所述方法应用于第三服务端,所述方法包括:
8.根据权利要求7所述的方法,其特征在于,所述利用所述加密密钥对所述混淆令牌进行拆分和解密,得到初始令牌,包括:
9.根据权利要求8所述的方法,其特征在于,所述根据所述对称解密得到的初始令牌的令牌头部的签名算法,对所述初始令牌的令牌签名进行校验,包括:<
...【技术特征摘要】
1.一种访问请求的处理方法,其特征在于,所述方法应用于第一服务端,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述利用加密密钥对所述初始令牌进行加密,并将所述加密密钥插入加密后的初始令牌,得到混淆令牌,包括:
3.根据权利要求2所述的方法,其特征在于,所述随机生成所述加密密钥和所述位置标识,包括:
4.根据权利要求1所述的方法,其特征在于,所述根据所述用户标识和所述授权范围,生成初始令牌,包括:
5.根据权利要求4所述的方法,其特征在于,还包括:
6.根据权利要求4所述的方法,其特征在于,所述创建所述初始令牌的颁发时间戳和过期时间戳,包括:
7.一种访问请求的处理方法,其特征在于,所述方法应用于第三服务端,所述方法包括:
8.根据权利要求7所述的方法,其特征在于,所述利用所述加密密...
【专利技术属性】
技术研发人员:毛辰飞,
申请(专利权)人:北京沃东天骏信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。