一种权限校验方法及装置制造方法及图纸

技术编号:35784987 阅读:18 留言:0更新日期:2022-12-01 14:32
本申请提供了一种权限校验方法及装置,网关接收目标用户的资源请求,资源请求携带有目标功能、目标微服务和目标资源的信息;网关基于资源请求,校验目标用户对目标功能的权限;若目标用户对目标功能有权限,则将资源请求转发到目标微服务;目标微服务基于资源请求,校验目标用户在目标功能下对目标资源的访问权限。本申请通过分步权限校验方案,实现了细粒度的权限控制。度的权限控制。度的权限控制。

【技术实现步骤摘要】
一种权限校验方法及装置


[0001]本申请主要涉及计算机
,特别涉及一种权限校验方法及装置。

技术介绍

[0002]微服务架构下,一般包括注册中心、网关、微服务等模块。其中,网关是整个微服务系统的入口,访问注册中心,实现微服务的调用。当用户向微服务发起请求时,需要在网关对请求进行鉴权,从而校验该用户对该功能是否有权限。
[0003]然而,目前这种权限校验的方案,只在网关校验该用户对该功能是否有权限,是粗粒度的权限控制,无法校验该用户在该功能下对某资源的权限,即细粒度的权限控制。

技术实现思路

[0004]有鉴于此,本申请提供了一种权限校验方法及装置,通过分步权限校验方案,在具体的微服务中校验该用户在该功能下对该资源的权限,实现细粒度的权限控制。
[0005]一方面,本申请实施例首先提供了一种权限校验方法,所述方法包括:
[0006]网关接收目标用户的资源请求,所述资源请求携带有目标功能、目标微服务和目标资源的信息;
[0007]所述网关基于所述资源请求,校验所述目标用户对所述目标功能的权限;
[0008]若所述目标用户对所述目标功能有权限,则将所述资源请求转发到所述目标微服务;
[0009]所述目标微服务基于所述资源请求,校验所述目标用户在所述目标功能下对所述目标资源的访问权限。
[0010]可选的,所述方法还包括:
[0011]获取用户权限信息,所述用户权限信息包括公共功能清单和特定用户的权限信息;
[0012]对所述用户权限信息加工整合,并存储到缓存中。
[0013]可选的,所述网关基于所述资源请求,校验所述目标用户对所述目标功能的权限,包括:
[0014]所述网关基于所述资源请求,查询所述缓存中的用户权限信息,校验所述目标用户对所述目标功能的权限。
[0015]可选的,所述目标微服务基于所述资源请求,校验所述目标用户在所述目标功能下对目标资源的访问权限,包括:
[0016]所述目标微服务基于所述资源请求,查询所述缓存中的用户权限信息,校验所述目标用户在所述目标功能下对目标资源的访问权限。
[0017]可选的,所述对所述用户权限信息加工整合,并存储到缓存中,包括:
[0018]将所述用户权限信息按照用户维度、功能维度和资源维度加工整合,并存储到缓存中。
[0019]可选的,所述方法还包括:
[0020]基于所述资源请求,所述网关通过注册中心查找所述目标微服务,获得所述目标微服务的地址;
[0021]所述将所述资源请求转发到所述目标微服务,包括:
[0022]根据所述目标微服务的地址,将所述资源请求转发到所述目标微服务。
[0023]可选的,所述方法还包括:
[0024]预先将微服务的服务信息注册到所述注册中心,以便于所述注册中心查找微服务。
[0025]另一方面,本申请实施例还提供了一种权限校验装置,所述装置包括:
[0026]请求接收模块,用于网关接收目标用户的资源请求,所述资源请求携带有目标功能、目标微服务和目标资源的信息;
[0027]功能校验模块,用于所述网关基于所述资源请求,校验所述目标用户对所述目标功能的权限;
[0028]请求转发模块,用于若所述目标用户对所述目标功能有权限,则将所述资源请求转发到所述目标微服务;
[0029]资源校验模块,用于所述目标微服务基于所述资源请求,校验所述目标用户在所述目标功能下对所述目标资源的访问权限。
[0030]另一方面,本申请实施例还提供了一种设备,所述设备包括:处理器和存储器;
[0031]所述存储器,用于存储指令;
[0032]所述处理器,用于执行所述存储器中的所述指令,执行以上方面所述的方法。
[0033]另一方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有程序代码或指令,当其在计算机上运行时,使得所述计算机执行以上方面所述的方法。
[0034]由此可见,本申请实施例有如下有益效果:
[0035]本申请通过网关接收目标用户的资源请求,网关基于该资源请求,校验目标用户对目标功能的权限;若目标用户对目标功能有权限,则将资源请求转发到目标微服务;目标微服务基于资源请求,校验目标用户在目标功能下对目标资源的访问权限。本申请根据资源请求携带的信息,在网关对目标用户的功能权限进行校验,若功能权限校验通过,则进一步在具体的微服务中对目标用户在该功能下的资源权限进行校验;通过分步权限校验方案,实现了细粒度的权限控制。
附图说明
[0036]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
[0037]图1为本申请实施例提供的一种权限校验方法的流程图;
[0038]图2为本申请实施例提供的一种权限校验方法的模块示意图;
[0039]图3为本申请实施例提供的一种权限校验装置的示意图。
具体实施方式
[0040]为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请的具体实施方式做详细的说明。
[0041]在下面的描述中阐述了很多具体细节以便于充分理解本申请,但是本申请还可以采用其它不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施例的限制。
[0042]目前,微服务架构下,往往通过查询数据库的方式直接在网关对接收到的请求进行鉴权,以便于校验请求对应的用户对其需要访问的功能是否有权限。这种权限校验方案,具有以下问题:
[0043]一方面,查询数据库对权限进行验证,连接数据库速度较慢,同时还需要对数据进行二次组装、联合等,效率较低;
[0044]另一方面,仅在网关校验用户对功能是否有权限,是粗粒度的权限控制,无法校验该用户在该功能下对某资源的权限。
[0045]为了解决以上问题中的至少一个问题,本申请一种权限校验方法及装置,通过分步权限校验方案,在具体的微服务中校验该用户在该功能下对该资源的权限,实现细粒度的权限控制。
[0046]为了便于理解,下面结合附图对本申请实施例提供的一种权限校验方法及装置进行详细的说明。
[0047]参考图1所示,为本申请实施例提供的一种权限校验方法的流程图,该方法可以包括以下步骤:
[0048]S101:网关接收目标用户的资源请求,所述资源请求携带有目标功能、目标微服务和目标资源的信息。
[0049]本申请实施例中,目标用户的资源请求是由服务请求方向网关发送的访问微服务系统的请求,可能为浏览器、APP、其他系统或者本系统前端转发的来自外部的请求。网关为整个微服务系统的入口本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种权限校验方法,其特征在于,所述方法包括:网关接收目标用户的资源请求,所述资源请求携带有目标功能、目标微服务和目标资源的信息;所述网关基于所述资源请求,校验所述目标用户对所述目标功能的权限;若所述目标用户对所述目标功能有权限,则将所述资源请求转发到所述目标微服务;所述目标微服务基于所述资源请求,校验所述目标用户在所述目标功能下对所述目标资源的访问权限。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:获取用户权限信息,所述用户权限信息包括公共功能清单和特定用户的权限信息;对所述用户权限信息加工整合,并存储到缓存中。3.根据权利要求2所述的方法,其特征在于,所述网关基于所述资源请求,校验所述目标用户对所述目标功能的权限,包括:所述网关基于所述资源请求,查询所述缓存中的用户权限信息,校验所述目标用户对所述目标功能的权限。4.根据权利要求2所述的方法,其特征在于,所述目标微服务基于所述资源请求,校验所述目标用户在所述目标功能下对目标资源的访问权限,包括:所述目标微服务基于所述资源请求,查询所述缓存中的用户权限信息,校验所述目标用户在所述目标功能下对目标资源的访问权限。5.根据权利要求2所述的方法,其特征在于,所述对所述用户权限信息加工整合,并存储到缓存中,包括:将所述用户权限信息按照用户维度、功能维度和资源维度加工整合,并存储到缓存中。6.根据权利要求1所...

【专利技术属性】
技术研发人员:高倩韩琪张博田济榕罗琪赵晶晶
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1