【技术实现步骤摘要】
一种基于企业服务网关的统一认证鉴权方法及装置
[0001]本专利技术涉及一种基于企业服务网关的统一认证鉴权方法及装置,属于网络安全
。
技术介绍
[0002]基于
OAuth2.0
协议的
JWT
认证技术是目前主流的服务网关采用的认证方式,但是对于企业级服务网关在高并发场景下针对每个请求都进行解密
JWT
,导致网关服务性能下降
(
消耗大量
CPU
资源
)
;根据解析出的业务应用标识再查询关系数据或集中式缓存,多增加一次网络调用的性能开销;
JWT
认证技术也无法实现已发放凭证的状态管理,如无法统计已发放的
JWT
数量,强制指定的
JWT
下线等功能
。
[0003]已有的服务网关鉴权采用集中式缓存技术,每次请求将从
Redis
集中缓存库中获取指定业务应用已授权的全量服务列表,依次遍历匹配待请求共享服务地址的权限,当业务应用授权的服务接口数量较多时,可能性能瓶颈集中在
Redis
缓存库和网络开销,降低了服务网关鉴权的性能,另外采用遍历方式校验服务权限算法的复杂度较高
。
技术实现思路
[0004]本专利技术的目的在于克服现有技术中的不足,提供一种基于企业服务网关的统一认证鉴权方法及装置,解决了传统的认证方式造成企业服务网关的性能下降,影响服务安全的技术问题
。
...
【技术保护点】
【技术特征摘要】
1.
一种基于企业服务网关的统一认证鉴权方法,其特征在于,包括:拦截业务应用访问共享服务的请求,并从所述请求中提取
Token
;基于所述
Token
进行网关认证,若认证成功,则获取所述业务应用的元数据,并基于所述业务应用的元数据生成其最小权限决策树;解析所述请求的请求服务地址和业务应用
ID
,并在所述最小权限决策树中进行匹配,若匹配成功,则将所述请求转发至所述共享服务,若匹配失败,则生成异常消息;在预设滚动时间窗口内聚合统计异常消息,将连续预设次数存在异常消息的所述请求的
IP
地址加入黑名单,进行服务请求熔断
。2.
根据权利要求1所述的基于企业服务网关的统一认证鉴权方法,其特征在于,所述业务应用从所述企业服务网关处申请
Token
,所述企业服务网关使用
JWT
协议生成
Token
,所述
JWT
协议包括头部域
、
有效载荷域
、
签名域;所述头部域包括加密算法,所述有效载荷域包括业务应用
ID、
申请时间
、
过期时间,所述业务应用
ID
基于所述加密算法进行加密;所述签名域对所述有效载荷域进行数字签名;所述企业服务网关将生成的
Token
写入集中式缓存中,缓存
Key
为
Token
,缓存
Value
为业务应用的元数据,并设置其生存周期;所述业务应用在发出访问共享服务的请求时,将生成的
Token
写入所述请求的请求头
x
‑
token
属性中
。3.
根据权利要求2所述的基于企业服务网关的统一认证鉴权方法,其特征在于,所述基于所述
Token
进行网关认证包括:在所述企业服务网关的进程内缓存中查询所述
Token
,若查询到,则认证成功;若未查询到,则在所述企业服务网关的集中式缓存中查询所述
Token
,若查询到,则将所述
Token
放入所述进程内缓存中;若未查询到,则认证失败
。4.
根据权利要求2所述的基于企业服务网关的统一认证鉴权方法,其特征在于,所述基于所述业务应用的元数据生成其最小权限决策树包括:基于所述业务应用的元数据获取业务应用
ID
;从所述企业服务网关的集中式缓存中加载所述业务应用
ID
对应的共享服务授权列表;将所述共享服务授权列表中共享服务的共享服务地址根据路径分隔符解析为三个域:服务编码
、
服务模块
、
服务方法;根据三个域在所述企业服务网关的进程内缓存中生成最小权限决策树,所述最小权限决策树的第一层为业务应用
ID
,第二层为服务编码,第三层为服务模块,第四层为服务方法
。5.
根据权利要求4所述的基于企业服务网关的统一认证鉴权方法,其特征在于,所述在所述最小权限决策树中进行匹配包括:通过所述业务应用
ID
在所述企业服务网关的进程内缓存中查找相应的最小权限决策树;将所...
【专利技术属性】
技术研发人员:郭伟,刘士进,刘一田,孟庆强,郑浩泉,朱继彤,
申请(专利权)人:南京南瑞信息通信科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。