CN114091035A - 越权校验方法、装置、设备与存储介质 - Google Patents
越权校验方法、装置、设备与存储介质 Download PDFInfo
- Publication number
- CN114091035A CN114091035A CN202111360314.9A CN202111360314A CN114091035A CN 114091035 A CN114091035 A CN 114091035A CN 202111360314 A CN202111360314 A CN 202111360314A CN 114091035 A CN114091035 A CN 114091035A
- Authority
- CN
- China
- Prior art keywords
- target
- verification
- override
- user request
- field
- 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
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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请涉及越权校验技术领域,本申请提供一种越权校验方法、装置、设备与存储介质,越权校验方法包括:接收终端设备发送的用户请求,并确定与所述用户请求对应的目标业务接口;在为所述目标业务接口预先配置切面层的情况下,通过所述切面层获取为所述目标业务接口配置的目标越权校验协议,所述目标越权校验协议包括至少一个越权校验参数;通过所述切面层根据至少一个所述越权校验参数,对所述用户请求进行越权校验。实施本申请,可以与业务层解耦,避免业务代码的污染。
Description
技术领域
本申请涉及越权校验技术领域,尤其涉及一种越权校验方法、装置与存储介质。
背景技术
越权问题是网页web应用程序中一种常见的漏洞,又分水平校验(比如用户A访问到了用户B的信息)和垂直校验(比如普通用户获取到了管理员权限的信息)。越权是指业务系统未对某个操作权限或者账户进行严格的限制,导致本来没有操作权限的账号获得正常的操作权限,造成大量用户敏感信息泄漏,甚至非法操作其他账户的隐私数据。
越权漏洞属于业务强相关的逻辑漏洞,传统的做法是,把越权校验逻辑直接写在业务代码里面。代码入侵性强,当业务场景发生变化的时候,就需要修改代码,扩展性差。
发明内容
基于此,有必要针对上述技术问题,提供一种越权校验方法、装置、设备与存储介质,将越权校验逻辑抽象到切面层,在切面层完成越权校验,与业务层解耦,避免业务代码的污染。
第一方面,本申请提供一种越权校验方法,所述方法包括:
接收终端设备发送的用户请求,并确定与所述用户请求对应的目标业务接口;
在为所述目标业务接口预先配置切面层的情况下,通过所述切面层获取为所述目标业务接口配置的目标越权校验协议,所述目标越权校验协议包括至少一个越权校验参数;
通过所述切面层根据至少一个所述越权校验参数,对所述用户请求进行越权校验。
结合第一方面,在一些实施例中,所述越权校验参数包括目标bean对象的baen名称、目标越权校验方法的目标方法名、目标字段的字段名称;
所述通过所述切面层根据所述至少一个越权校验参数,对所述用户请求进行越权校验,包括:
通过所述切面层根据所述baen名称从所述目标bean对象中获取所述目标方法名对应的所述目标越权校验方法;
通过所述切面层根据所述字段名称从所述用户请求中获取所述目标字段的字段值;
通过所述切面层采用所述目标越权校验方法对所述字段值进行校验。
结合第一方面,在一些实施例中,所述通过所述切面层根据所述bean名称从所述目标bean对象中获取所述目标方法名对应的所述目标越权校验方法,包括:
通过所述切面层从spring容器中获取所述baen名称对应的所述目标bean对象,所述目标bean对象包括多个越权校验方法,所述多个越权校验方法均属于目标业务场景类型的越权校验方法;
通过切面层从所述多个越权校验方法中获取与所述目标方法名对应的所述目标越权校验方法。
结合第一方面,在一些实施例中,所述接收终端设备发送的用户请求之前还包括:
获取所述目标业务场景类型对应的Java文件,所述Java文件包括所述多个越权校验方法;
将所述Java文件对应的Java对象解析成所述目标bean对象;
将所述目标bean对象存储到所述spring容器中。
结合第一方面,在一些实施例中,所述目标字段包括至少一个字段,所述通过所述切面层根据所述字段名称从所述用户请求中获取所述目标字段的字段值,包括:
通过所述切面层根据至少一个所述字段中各个字段的字段名称从所述用户请求中获取至少一个所述字段的字段值;
通过所述切面层采用所述目标越权校验方法对所述字段值进行校验,包括:
通过所述切面层采用所述目标越权校验方法依次对各个所述字段的字段值进行校验,若各个所述字段的字段值均校验通过,则确定所述用户请求通过校验。
结合第一方面,在一些实施例中,所述用户请求用于请求对目标对象进行操作;
所述通过所述切面层根据至少一个所述越权校验参数,对所述用户请求进行越权校验之后,还包括:
若所述用户请求通过越权校验,则执行所述目标业务接口对应的目标业务方法,以对所述目标对象进行操作;
若所述用户请求未通过越权校验,则向所述终端设备发送提示信息,所述提示信息用于提示所述终端设备不具有对所述目标对象进行操作的权限。
结合第一方面,在一些实施例中,所述方法还包括:
在未给所述目标业务接口预先配置切面层的情况下,执行所述目标业务接口对应的目标业务方法。
第二方面,本申请提供一种越权校验装置,该装置包括:
接收单元,用于接收终端设备发送的用户请求,并确定与所述用户请求对应的目标业务接口;
第一获取单元,用于在为所述目标业务接口预先配置切面层的情况下,通过所述切面层获取为所述目标业务接口配置的目标越权校验协议,所述目标越权校验协议包括至少一个越权校验参数;
校验单元,用于通过所述切面层根据至少一个所述越权校验参数,对所述用户请求进行越权校验。
结合第二方面,在一些实施例中,所述越权校验参数包括目标bean对象的baen名称、目标越权校验方法的目标方法名、目标字段的字段名称;
所述校验单元具体用于:通过所述切面层根据所述baen名称从所述目标bean对象中获取所述目标方法名对应的所述目标越权校验方法;
通过所述切面层根据所述字段名称从所述用户请求中获取所述目标字段的字段值;
通过所述切面层采用所述目标越权校验方法对所述字段值进行校验。
结合第二方面,在一些实施例中,所述校验单元具体用于:通过所述切面层从spring容器中获取所述baen名称对应的所述目标bean对象,所述目标bean对象包括多个越权校验方法,所述多个越权校验方法均属于目标业务场景类型的越权校验方法;
通过切面层从所述多个越权校验方法中获取与所述目标方法名对应的所述目标越权校验方法。
结合第二方面,在一些实施例中,所述装置还包括:
第二获取单元,用于获取所述目标业务场景类型对应的Java文件,所述Java文件包括所述多个越权校验方法;
解析单元,用于将所述Java文件对应的Java对象解析成所述目标bean对象;
存储单元,用于将所述目标bean对象存储到所述spring容器中。
结合第二方面,在一些实施例中,所述目标字段包括至少一个字段,
所述校验单元具体用于通过所述切面层根据至少一个所述字段中各个字段的字段名称从所述用户请求中获取所述至少一个字段的字段值;
通过所述切面层采用所述目标越权校验方法对所述字段值进行校验,包括:
通过所述切面层采用所述目标越权校验方法依次对各个所述字段的字段值进行校验,若各个所述字段的字段值均校验通过,则确定所述用户请求通过校验。
结合第二方面,在一些实施例中,所述用户请求用于请求对目标对象进行操作;所述装置还包括:
业务方法执行单元,用于若所述用户请求通过越权校验,则执行所述目标业务接口对应的目标业务方法,以对所述目标对象进行操作;
发送单元,用于若所述用户请求未通过越权校验,则向所述终端设备发送提示信息,所述提示信息用于提示所述终端设备不具有对所述目标对象进行操作的权限。
结合第二方面,在一些实施例中,所述装置还包括:
业务执行单元,用于在未给所述目标业务接口预先配置切面层的情况下,执行所述目标业务接口对应的目标业务方法。
第三方面,本申请提供一种越权校验设备,包括处理器、存储器以及通信接口,该处理器、存储器和通信接口相互连接,其中,该通信接口用于接收和发送数据,该存储器用于存储程序代码,该处理器用于调用该程序代码,执行如第一方面以及第一方面中任一可能的实现方式描述的方法。
第四方面,本申请提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序;当该计算机程序在一个或多个处理器上运行时,使得该终端设备执行如第一方面以及第一方面中任一可能的实现方式描述的方法。
本申请实施例中,服务端接收用户请求,确定用户请求对应的目标业务接口,在为目标业务接口预先配置切面层的情况下,通过切面层获取为目标业务接口配置的目标越权校验协议,该目标越权校验协议包括至少一个越权校验参数,通过切面层根据该至少一个越权校验参数对用户请求进行越权校验,本申请将越权校验逻辑,抽象到切面层,在切面层统一完成越权校验,与业务层解耦,避免业务代码的污染,整个越权校验流程,对业务层是无感知的。并且能够动态配置越权校验协议,快速适应业务场景的变化,扩展性强。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的一种越权校验方法的流程示意图;
图2为本申请实施例提供的越权校验场景示意图;
图3为本申请实施例提供的一种越权校验装置的示意图;
图4为本申请实施例提供的一种越权校验设备的示意图。
具体实施方式
下面结合附图对本发明作进一步详细描述。
本申请以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括复数表达形式,除非其上下文中明确地有相反指示。
在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上,“至少两个(项)”是指两个或三个及三个以上,“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”。
本申请实施例提供了一种越权校验方法,为了更清楚地描述本申请的方案,下面对本申请涉及的一些附图作进一步介绍。
请参阅图1,图1为本申请实施例提供的一种越权校验方法的流程示意图。如图1所示,所述方法包括以下步骤:
S101,接收终端设备发送的用户请求,并确定与所述用户请求对应的目标业务接口;
本申请实施例中,服务端接收终端设备发送的用户请求,该用户请求可以是请求对目标对象进行操作,比如,请求对第一账号的用户信息进行查询操作,请求对第一账号的用户信息进行修改操作等等。服务端在接收到终端设备发送的用户请求之后,确定与该用户请求对应的目标业务接口。
具体的,根据用户请求的路径可以索引得到对应的目标业务方法,该目标业务方法中定义的逻辑即是用于对用户请求进行处理的逻辑,比如,该用户请求用于请求对第一账号的用户信息进行查询操作,则该目标业务方法即是用于查询第一账号的用户信息。
本申请在执行该目标业务方法之前,判断是否为该目标业务方法预先配置切面层,如果为该目标业务方法预先配置切面层,则转入该切面层,通过该切面层判断是否为该目标业务方法所表示的目标业务接口配置越权校验协议,如果为该目标业务接口配置越权校验协议的情况下,则转入步骤S102执行。其中,为业务接口预先配置切面层是指面向切面编程(Aspect Oriented Programming,AOP)中,在原本功能的目标业务接口所对应业务方法的切面层添加自定义代码从而实现越权校验。
可以理解的是,如果未给该目标业务接口预先配置切面层,则执行对应的目标业务方法,从而实现对目标对象的操作。
S102,在为所述目标业务接口预先配置切面层的情况下,通过所述切面层获取为所述目标业务接口配置的目标越权校验协议,所述目标越权校验协议包括至少一个越权校验参数;
本申请实施例中,通过切面层获取预先为该目标业务接口配置的目标越权校验协议,并对该目标越权校验协议进行解析,从而得到至少一个越权校验参数。
可选的,该至少一个越权校验参数可以包括越权校验JAVA对象所对应的目标Bean对象的Bean名称beanName、目标越权校验方法的目标方法名methodName、越权校验的目标字段的字段名称fieldName,可选的,还可以包括该越权校验目标字段的字段类型paramClass。如下表所示,即是目标越权校验协议中所包含的各个参数名称、参数类型以及各个参数的说明。
其中,目标越权校验方法定义了越权校验规则,通过目标方法名可以索引到对应的目标越权校验方法,不同业务接口可以调用同一个越权校验方法,同一个业务接口也可以调用不同的越权校验方法。
本申请实施例中,根据实际的业务场景,预先给每个需要校验的业务接口,配置对应的越权校验协议,越权校验协议包括的各个参数如上表所示。
S103,通过所述切面层根据所述至少一个越权校验参数,对所述用户请求进行越权校验。
本申请实施例中,在切面层根据该目标越权校验协议中的至少一个越权校验参数对用户请求进行越权校验,即校验发送该用户请求的用户是否具有对目标对象进行操作的权限。
具体的,可以是从spring容器里面获取Bean名称所对应的目标Bean对象,该目标Bean对象中可以包括多个越权校验方法,该多个越权校验方法可以是均属于目标业务场景类型的越权校验方法,比如,可以都是用户信息类的越权校验方法。本申请实施例中,将属于同一个业务场景类型的越权校验方法放置在同一个Bean对象中,方便管理各个业务场景类型的越权校验方法。
进一步通过切面层从该多个越权校验方法中获取与目标方法名所对应的目标越权校验方法,从而采用该目标越权校验方法对用户请求进行越权校验。
可选的,还可以通过切面层根据目标越权校验协议中的字段名称从用户请求中获取需要进行校验的目标字段的字段值,该目标字段可以包括至少一个字段,相应的字段名称也包括该至少一个字段的字段名称。比如,该用户请求是用于请求对第一账号的用户信息进行查询操作,则需要进行校验的目标字段可以是源账号字段和目标账号字段,该源账号字段中的字段值用于表示发送该用户请求的第二账号,目标账号字段的字段值为所述第一账号。
示例性的,可以预先在每种业务场景类型的Java文件里面,提前制定好至少一个越权校验方法,该越权校验方法定义了越权校验规则,在WEB服务启动的时候,将Java文件识别为Java对象,进一步将Java对象解析成Bean对象,并将该Bean对象存储至Spring容器,每个Bean对象均有一个Bean名称,该Spring容器中包括各种业务场景类型所对应的Bean对象。后续在对目标业务接口的目标越权校验协议进行解析时,获得目标Bean对象的Bean名称,通过该目标Bean对象的Bean名称即可从spring容器里面获取对应的目标Bean对象,并进一步从该目标Bean对象获取目标方法名所对应的目标越权校验方法。
在切面层采用该目标越权校验方法对所获取的字段值进行越权校验,如果校验通过,则执行目标业务接口对应的目标业务方法。如果校验不通过,则可以向终端设备发送提示信息,该提示信息用于提示该终端设备的用户不具有对目标对象进行操作的权限。
本申请实施例中,在获取目标越权校验方法和用户请求中目标字段中的字段值之后,即可采用该目标越权校验方法对所获取字段值进行越权校验,比如,该用户请求用于请求对第一账号的用户信息进行查询操作,所获取的目标字段的字段值包括源账号字段的字段值和目标账号字段的字段值,采用目标越权校验方法对所获取的字段值进行越权校验的过程可以是,判断源账号字段的字段值与目标账号字段的字段值是否相同,如果相同,则该用户请求通过越权校验,如果不同,则该用户请求不通过越权校验。进一步,如果用户请求通过越权校验,则转入执行目标业务接口的目标业务方法,比如获取第一账号的具体用户信息,并向终端设备返回该第一账号的具体用户信息。
本申请实施例中,服务端接收用户请求,确定用户请求对应的目标业务接口,在为目标业务接口预先配置切面层的情况下,通过切面层获取为目标业务接口配置的目标越权校验协议,该目标越权校验协议包括至少一个越权校验参数,通过切面层根据该至少一个越权校验参数对用户请求进行越权校验,本申请将越权校验逻辑,抽象到切面层,在切面层统一完成越权校验,与业务层解耦,避免业务代码的污染,整个越权校验流程,对业务层是无感知的。并且能够动态配置越权校验协议,快速适应业务场景的变化,扩展性强。
请参照图2,图2为本申请实施例提供的越权校验场景示意图,如图所示,服务端接收客户端发送的用户请求,在为所述用户请求对应的业务接口预先配置切面层的情况下,转入切面层执行,通过切面层判断该用户请求所对应的业务接口是否配置越权校验信息,或者判断用户请求所对应的业务接口是否配置越权校验注解,如果没有配置,则直接执行业务接口所对应的业务方法。
如果为用户请求所对应的业务接口预先配置了越权校验协议,则解析越权校验协议,获得bean对象的bean名称beanName、越权校验方法名、需要进行校验的字段名称和字段类型,通过切面层根据bean名称beanName从spring容器里面获取bean对象,然后根据越权校验方法名从bean对象获取对应的越权校验方法,根据越权校验协议中的字段类型和字段名称从用户请求中获取字段值,从而执行越权校验方法中定义的越权校验规则对字段值进行越权校验,如果校验通过,则执行业务方法,如果没有通过则结束流程,向客户端返回请求失败的反馈信息。
请参见图3,为本申请实施例提供了一种越权校验装置的结构示意图。如图3所示,该越权装置可以包括:
接收单元10,用于接收终端设备发送的用户请求,并确定与所述用户请求对应的目标业务接口;
第一获取单元11,用于在为所述目标业务接口预先配置切面层的情况下,通过所述切面层获取为所述目标业务接口配置的目标越权校验协议,所述目标越权校验协议包括至少一个越权校验参数;
校验单元12,用于通过所述切面层根据至少一个所述越权校验参数,对所述用户请求进行越权校验。
在一种可能的设计中,所述越权校验参数包括目标bean对象的baen名称、目标越权校验方法的目标方法名、目标字段的字段名称;
所述校验单元具体用于:通过所述切面层根据所述baen名称从所述目标bean对象中获取所述目标方法名对应的所述目标越权校验方法;
通过所述切面层根据所述字段名称从所述用户请求中获取所述目标字段的字段值;
通过所述切面层采用所述目标越权校验方法对所述字段值进行校验。
在一种可能的设计中,所述校验单元具体用于:通过所述切面层从spring容器中获取所述baen名称对应的所述目标bean对象,所述目标bean对象包括多个越权校验方法,所述多个越权校验方法均属于目标业务场景类型的越权校验方法;
通过切面层从所述多个越权校验方法中获取与所述目标方法名对应的所述目标越权校验方法。
在一种可能的设计中,所述装置还包括:
第二获取单元,用于获取所述目标业务场景类型对应的Java文件,所述Java文件包括所述多个越权校验方法;
解析单元,用于将所述Java文件对应的Java对象解析成所述目标bean对象;
存储单元,用于将所述目标bean对象存储到所述spring容器中。
在一种可能的设计中,所述目标字段包括至少一个字段,
所述校验单元具体用于通过所述切面层根据至少一个所述字段中各个字段的字段名称从所述用户请求中获取至少一个所述字段的字段值;
通过所述切面层采用所述目标越权校验方法对所述字段值进行校验,包括:
通过所述切面层采用所述目标越权校验方法依次对各个所述字段的字段值进行校验,若各个所述字段的字段值均校验通过,则确定所述用户请求通过校验。
在一种可能的设计中,所述用户请求用于请求对目标对象进行操作;所述装置还包括:
业务方法执行单元,用于若所述用户请求通过越权校验,则执行所述目标业务接口对应的目标业务方法,以对所述目标对象进行操作;
发送单元,用于若所述用户请求未通过越权校验,则向所述终端设备发送提示信息,所述提示信息用于提示所述终端设备不具有对所述目标对象进行操作的权限。
在一种可能的设计中,所述装置还包括:
业务执行单元,用于在未给所述目标业务接口预先配置切面层的情况下,执行所述目标业务接口对应的目标业务方法。
其中,图3所示装置实施例的具体描述可以参照前述图1或图2所示方法实施例的具体说明,在此不进行赘述。
请参照图4,为本申请实施例提供的一种越权校验设备的结构示意图,如图4所示,该越权校验设备1000可以包括:至少一个处理器1001,例如CPU,至少一个通信接口1003,存储器1004,至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。通信接口1003可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1004可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1004可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图4所示,作为一种计算机存储介质的存储器1004中可以包括操作系统、网络通信单元以及程序指令。
在图4所示的越权校验设备1000中,处理器1001可以用于加载存储器1004中存储的程序指令,并具体执行以下操作:
接收终端设备发送的用户请求,并确定与所述用户请求对应的目标业务接口;
在为所述目标业务接口预先配置切面层的情况下,通过所述切面层获取为所述目标业务接口配置的目标越权校验协议,所述目标越权校验协议包括至少一个越权校验参数;
通过所述切面层根据至少一个所述越权校验参数,对所述用户请求进行越权校验。
需要说明的是,具体执行过程可以参见图1或图2所示方法实施例的具体说明,在此不进行赘述。
本申请实施例还提供了一种计算机存储介质,所述计算机存储介质可以存储有多条指令,所述指令适于由处理器加载并执行如上述图1或图2所示实施例的方法步骤,具体执行过程可以参见图1或图2所示实施例的具体说明,在此不进行赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如DVD)、或者半导体介质(例如固态硬盘)等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:ROM或随机存储记忆体RAM、磁碟或者光盘等各种可存储程序代码的介质。
Claims (10)
1.一种越权校验方法,其特征在于,包括:
接收终端设备发送的用户请求,并确定与所述用户请求对应的目标业务接口;
在为所述目标业务接口预先配置切面层的情况下,通过所述切面层获取为所述目标业务接口配置的目标越权校验协议,所述目标越权校验协议包括至少一个越权校验参数;
通过所述切面层根据至少一个所述越权校验参数,对所述用户请求进行越权校验。
2.如权利要求1所述的方法,其特征在于,所述越权校验参数包括目标bean对象的baen名称、目标越权校验方法的目标方法名、目标字段的字段名称;
所述通过所述切面层根据所述至少一个越权校验参数,对所述用户请求进行越权校验,包括:
通过所述切面层根据所述baen名称从所述目标bean对象中获取所述目标方法名对应的所述目标越权校验方法;
通过所述切面层根据所述字段名称从所述用户请求中获取所述目标字段的字段值;
通过所述切面层采用所述目标越权校验方法对所述字段值进行校验。
3.如权利要求2所述的方法,其特征在于,所述通过所述切面层根据所述bean名称从所述目标bean对象中获取所述目标方法名对应的所述目标越权校验方法,包括:
通过所述切面层从spring容器中获取所述baen名称对应的所述目标bean对象,所述目标bean对象包括多个越权校验方法,所述多个越权校验方法均属于目标业务场景类型的越权校验方法;
通过切面层从所述多个越权校验方法中获取与所述目标方法名对应的所述目标越权校验方法。
4.如权利要求3所述的方法,其特征在于,所述接收终端设备发送的用户请求之前还包括:
获取所述目标业务场景类型对应的Java文件,所述Java文件包括所述多个越权校验方法;
将所述Java文件对应的Java对象解析成所述目标bean对象;
将所述目标bean对象存储到所述spring容器中。
5.如权利要求2所述的方法,其特征在于,所述目标字段包括至少一个字段,所述通过所述切面层根据所述字段名称从所述用户请求中获取所述目标字段的字段值,包括:
通过所述切面层根据至少一个所述字段中各个字段的字段名称从所述用户请求中获取至少一个所述字段的字段值;
通过所述切面层采用所述目标越权校验方法对所述字段值进行校验,包括:
通过所述切面层采用所述目标越权校验方法依次对各个所述字段的字段值进行校验,若各个所述字段的字段值均校验通过,则确定所述用户请求通过校验。
6.如权利要求1所述的方法,其特征在于,所述用户请求用于请求对目标对象进行操作;
所述通过所述切面层根据至少一个所述越权校验参数,对所述用户请求进行越权校验之后,还包括:
若所述用户请求通过越权校验,则执行所述目标业务接口对应的目标业务方法,以对所述目标对象进行操作;
若所述用户请求未通过越权校验,则向所述终端设备发送提示信息,所述提示信息用于提示所述终端设备不具有对所述目标对象进行操作的权限。
7.如权利要求1所述的方法,其特征在于,所述方法还包括:
在未给所述目标业务接口预先配置切面层的情况下,执行所述目标业务接口对应的目标业务方法。
8.一种越权校验装置,其特征在于,包括:
接收单元,用于接收终端设备发送的用户请求,并确定与所述用户请求对应的目标业务接口;
第一获取单元,用于在为所述目标业务接口预先配置切面层的情况下,通过所述切面层获取为所述目标业务接口配置的目标越权校验协议,所述目标越权校验协议包括至少一个越权校验参数;
校验单元,用于通过所述切面层根据至少一个所述越权校验参数,对所述用户请求进行越权校验。
9.一种越权校验设备,其特征在于,包括处理器、存储器以及通信接口,所述处理器、存储器和通信接口相互连接,其中,所述通信接口用于接收和发送数据,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,执行如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序;当所述计算机程序在一个或多个处理器上运行时,执行如权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111360314.9A CN114091035A (zh) | 2021-11-17 | 2021-11-17 | 越权校验方法、装置、设备与存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111360314.9A CN114091035A (zh) | 2021-11-17 | 2021-11-17 | 越权校验方法、装置、设备与存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114091035A true CN114091035A (zh) | 2022-02-25 |
Family
ID=80301229
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111360314.9A Pending CN114091035A (zh) | 2021-11-17 | 2021-11-17 | 越权校验方法、装置、设备与存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114091035A (zh) |
-
2021
- 2021-11-17 CN CN202111360314.9A patent/CN114091035A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113239344B (zh) | 一种访问权限控制方法和装置 | |
US8590052B2 (en) | Enabling granular discretionary access control for data stored in a cloud computing environment | |
US10158670B1 (en) | Automatic privilege determination | |
US9110750B2 (en) | Application installation system | |
EP2989543B1 (en) | Method and device for updating client | |
US9742640B2 (en) | Identifying compatible web service policies | |
US20130326032A1 (en) | Resource configuration for a network data processing system | |
CN110244963B (zh) | 数据更新方法、装置及终端设备 | |
CN109688093B (zh) | 防火墙策略验证方法、系统、设备及可读存储介质 | |
US10594579B2 (en) | System monitoring device | |
CN111966422A (zh) | 一种本地化插件服务方法、装置、电子设备及存储介质 | |
CN110049106B (zh) | 业务请求处理系统及方法 | |
US9577967B2 (en) | Method and system for managing an informational site using a social networking application | |
CN114091035A (zh) | 越权校验方法、装置、设备与存储介质 | |
CN107172082B (zh) | 一种文件共享方法及系统 | |
CN113239048A (zh) | 一种数据管理方法、装置、电子设备及存储介质 | |
US20130340054A1 (en) | Credential collection in an authentication server employing diverse authentication schemes | |
CN113158146A (zh) | 脚本管理方法、脚本管理平台、计算设备及介质 | |
CN110708199A (zh) | 用于升级终端设备的方法、装置、电子设备和介质 | |
CN113055412B (zh) | 样本收集方法、装置、系统、计算机设备和可读存储介质 | |
US11429362B2 (en) | Device experience application launcher | |
CN116305218B (zh) | 一种数据链路追踪及数据更新方法、装置及数据管理系统 | |
CN116881880B (zh) | 时空数据管理系统及时空数据服务化资源协同调度方法 | |
CN112929321B (zh) | 一种鉴权方法、装置及终端设备 | |
KR20120041148A (ko) | 소프트웨어 및 어플리케이션 제어 관리 객체에서의 단계 실행 결과를 처리하는 방법 |
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 |