基于统一鉴权包的企业级业务系统权限鉴权方法与流程

文档序号:37056541发布日期:2024-02-20 21:02阅读:21来源:国知局
基于统一鉴权包的企业级业务系统权限鉴权方法与流程

本技术涉及数据处理,尤其涉及一种基于统一鉴权包的企业级业务系统权限鉴权方法。


背景技术:

1、随着互联网技术的发展,企业级的线上业务系统越来越普遍,为了保证企业数据安全,每一个使用该业务系统的用户,在办理业务前,都需要进行鉴权。

2、现有技术中,常见的鉴权方案有两种,一种是由网关承载所有的前端请求流量,实现鉴权和请求转发,这种方案会影响请求的耗时和稳定性,随着业务请求的增加,已然成为系统瓶颈。另一种是在每个业务系统的后端分别设置一套请求拦截和与权限系统来进行鉴权,这种方案由于没有形成统一的鉴权功能,具体实现只能依赖各平台后端维护,缺少质量保障,很难统一管理和升级,维护成本高。

3、因此,亟需一种新的基于统一鉴权包的企业级业务系统权限鉴权方法,以解决上述问题。


技术实现思路

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、本技术提供的基于统一鉴权包的企业级业务系统权限鉴权方法,所述方法应用于目标业务平台的后台服务,所述后台服务加载有统一鉴权包,所述统一鉴权包中封装有预先配置好的鉴权逻辑,所述方法包括:接收用户通过所述目标业务平台的前端服务发送的业务请求;其中,所述业务请求中携带有权限令牌和目标业务,所述权限令牌是用户在通过所述前端服务登录所述目标业务平台时,权限平台基于用户信息、所述目标业务平台的租户识别码以及用户在所述目标业务平台的用户权限信息所生成的;基于所述业务请求,调用与所述业务请求对应的鉴权逻辑;若确定所述业务请求中的权限令牌合法,则查询本地缓存,确定所述本地缓存中是否存在所述用户的鉴权结果;其中,所述本地缓存用于保存所述鉴权结果预设有效时长;若存在,则根据所述鉴权结果,向所述前端服务返回业务处理结果或鉴权失败信息;若不存在,则获取鉴权结果,并根据所述鉴权结果,向所述前端服务返回业务处理结果或鉴权失败信息。一方面,本技术的后台服务加载有统一鉴权包,由于统一鉴权包封装了所有业务常见的接口拦截和鉴权逻辑,功能完善任一想要接入权限的应用平台可直接引入该鉴权包就可以实现统一鉴权,解决了目前软件开发中难以快速接入鉴权的问题,也避免了重复工作,使得权限接入方便快捷,保证了接入质量,便于统一管理和升级,并且提供了丰富完善的鉴权功能,大大降低服务对功能权限、数据权限等相关需求的开发工作量。另一方面,本技术后台服务的本地缓存用于保存鉴权结果预设有效时长,这样,对于预设有效时长内的大量前端重复请求,后台服务就无需重复去权限服务再次鉴权,大大降低了去调用权限服务造成的耗时,避免了大量平台操作对权限服务带来大量并发的问题。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1