CN112395575A - 权限管理方法、装置、设备及存储介质 - Google Patents
权限管理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112395575A CN112395575A CN202011425855.0A CN202011425855A CN112395575A CN 112395575 A CN112395575 A CN 112395575A CN 202011425855 A CN202011425855 A CN 202011425855A CN 112395575 A CN112395575 A CN 112395575A
- Authority
- CN
- China
- Prior art keywords
- authority
- interface
- user
- annotation
- target
- 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/02—Banking, e.g. interest calculation or account maintenance
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Finance (AREA)
- Entrepreneurship & Innovation (AREA)
- Computer Security & Cryptography (AREA)
- Development Economics (AREA)
- Accounting & Taxation (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Game Theory and Decision Science (AREA)
- Educational Administration (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Technology Law (AREA)
- Operations Research (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本申请提供一种权限管理方法、装置、设备及存储介质,该方法通过无侵入的方式在接口添加权限注解,无需修改原有的代码逻辑,处理过程简单,解决了传统的权限管理模型需要定义更多的权限内容去实现权限与接口的关系,处理复杂的问题,而且本申请实施例在每个接口对应的代码上添加权限注解,从代码中直观的体现接口所属权限,无需从数据库中查询接口对应的权限,一定程度上解决了数据库中存储的接口权限有可能有误的问题,提高了接口与其对应权限的准确性,进而,根据上述每个接口对应的代码上添加的权限注解,对使用目标系统的用户进行权限管理,简单、准确,适合应用。
Description
技术领域
本申请涉及金融科技技术领域,尤其涉及一种权限管理方法、装置、设备及存储介质。
背景技术
随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Finteh)转变,用户权限管理技术也不例外,但由于金融行业的安全性、实时性要求,也对用户权限管理技术提出的更高的要求。
相关技术中,为了管理金融行业中用户的权限,业界已经提出了一些权限管理模型。其中,传统的权限管理模型一般有三层结构,用户-角色-权限。其中用户与角色是一对多关系,角色与权限是一对多关系,一个权限定义一种行为(一个接口)。
然而,通常而言权限与接口的关系并不是一对一关系。如果需要赋予一个接口不同的权限,或者说一个权限可作用于多个接口,对于传统的权限管理模型,需要定义更多的权限内容去实现,处理复杂。
发明内容
为解决现有技术中存在的问题,本申请提供一种权限管理方法、装置、设备及存储介质。
第一方面,本申请实施例提供一种权限管理方法,所述方法包括:
获取目标系统中的每个接口对应的权限参数,其中,所述目标系统包括至少一个所述接口;
根据所述每个接口对应的权限参数,确定所述每个接口的权限;
根据所述每个接口的权限,在所述每个接口对应的代码上添加权限注解;
根据所述每个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理。
在一种可能的实现方式中,所述权限参数包括至少一个权限标识、至少一个所属权限类型和至少一个权限描述,所述待添加的权限注解包括至少一个权限对象。
所述根据所述每个接口对应的权限参数,确定所述每个接口的权限,包括:
根据所述每个接口对应的所述权限参数中每一个权限标识以及其所属权限类型和权限描述,获得一个权限对象;
根据所述每个接口对应的权限对象,确定所述每个接口的权限。
在一种可能的实现方式中,所述根据所述每个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理,包括:
在获取所述用户的访问请求后,所述访问请求携带待访问接口标识,根据所述待访问接口标识和所述每个接口对应的代码上添加的权限注解,获得所述用户待访问的接口对应的代码上添加的目标权限注解;
根据所述目标权限注解,确定所述待访问的接口对应的目标用户;
根据所述目标用户,确定是否调用所述待访问的接口执行所述访问请求。
在一种可能的实现方式中,所述根据所述目标权限注解,确定所述待访问的接口对应的目标用户,包括:
根据预存的权限与角色的对应关系,确定所述目标权限注解对应的目标角色;
根据预存的角色与用户的对应关系,以及所述目标角色,确定所述目标用户。
在一种可能的实现方式中,所述根据所述目标用户,确定是否调用所述待访问的接口执行所述访问请求,包括:
将所述目标用户与所述用户进行比较;
若所述目标用户中包含所述用户,则调用所述待访问的接口执行所述访问请求。
在一种可能的实现方式中,在所述将所述目标用户与所述用户进行比较之后,还包括:
若所述目标用户中不包含所述用户,则拒绝所述访问请求,并输出拦截日志提示所述待访问的接口对应的所述目标用户。
在一种可能的实现方式中,所述权限参数还包括至少一个所属父权限的标识。
在所述根据所述每个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理之前,还包括:
根据所述每个接口对应的所述至少一个权限标识和所述至少一个所属父权限的标识,确定每一父权限对应的所有子权限;
根据所述每一父权限对应的所有子权限,在所述目标系统具有父权限的接口对应的代码上添加子权限的注解。
在一种可能的实现方式中,所述方法还包括:
根据所述每个接口对应的所述至少一个权限标识、所述至少一个所属权限类型、所述至少一个权限描述和所述至少一个所属父权限的标识,确定所述目标系统对应的第一权限管理关系表。
在一种可能的实现方式中,在所述确定所述目标系统对应的第一权限管理关系表之后,还包括:
获取预存的所述目标系统对应的第二权限管理关系表,所述第二权限管理关系表的预存时刻在所述获取目标系统中的每个接口对应的权限参数的时刻之前;
根据所述第一权限管理关系表和所述第二权限管理关系表,确定所述目标系统的权限变更情况。
在一种可能的实现方式中,根据所述每个接口对应的所述至少一个权限标识、所述至少一个所属权限类型、所述至少一个权限描述和所述至少一个所属父权限的标识,获得所述目标系统中每一父权限的接口对应的子权限的接口,以及子权限的所属权限类型和权限描述;
根据所述每一父权限的接口对应的子权限的接口,以及子权限的所属权限类型和权限描述,获得所述目标系统对应的所述第一权限管理关系表。
在一种可能的实现方式中,在所述根据所述每个接口的权限,在所述每个接口对应的代码上添加权限注解之前,还包括:
根据所述每个接口的权限,对所述每个接口进行接口分类;
所述根据所述每个接口的权限,在所述每个接口对应的代码上添加权限注解,包括:
根据所述每个接口的分类结果,确定每一类接口对应的接口类标识,并将所述每一类接口对应的接口类标识分别添加到对应的每一类接口的各个接口的代码上;
根据所述每个接口的权限,在所述每一类接口中的任意一个接口对应的代码上添加权限注解。
在一种可能的实现方式中,所述根据所述每个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理,包括:
根据所述每一类接口的各个接口上添加的接口类标识,以及所述每一类接口中的所述任意一个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理。
第二方面,本申请实施例提供一种权限管理装置,所述装置包括:
参数获取模块,用于获取目标系统中的每个接口对应的权限参数,其中,所述目标系统包括至少一个所述接口;
权限确定模块,用于根据所述每个接口对应的权限参数,确定所述每个接口的权限;
注解添加模块,用于根据所述每个接口的权限,在所述每个接口对应的代码上添加权限注解;
权限管理模块,用于根据所述每个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理。
在一种可能的实现方式中,所述权限参数包括至少一个权限标识、至少一个所属权限类型和至少一个权限描述,所述待添加的权限注解包括至少一个权限对象。
所述权限确定模块,具体用于:
根据所述每个接口对应的所述权限参数中每一个权限标识以及其所属权限类型和权限描述,获得一个权限对象;
根据所述每个接口对应的权限对象,确定所述每个接口的权限。
在一种可能的实现方式中,所述权限管理模块,具体用于:
在获取所述用户的访问请求后,所述访问请求携带待访问接口标识,根据所述待访问接口标识和所述每个接口对应的代码上添加的权限注解,获得所述用户待访问的接口对应的代码上添加的目标权限注解;
根据所述目标权限注解,确定所述待访问的接口对应的目标用户;
根据所述目标用户,确定是否调用所述待访问的接口执行所述访问请求。
在一种可能的实现方式中,所述权限管理模块,具体用于:
根据预存的权限与角色的对应关系,确定所述目标权限注解对应的目标角色;
根据预存的角色与用户的对应关系,以及所述目标角色,确定所述目标用户。
在一种可能的实现方式中,所述权限管理模块,具体用于:
将所述目标用户与所述用户进行比较;
若所述目标用户中包含所述用户,则调用所述待访问的接口执行所述访问请求。
在一种可能的实现方式中,所述权限管理模块,具体用于:
若所述目标用户中不包含所述用户,则拒绝所述访问请求,并输出拦截日志提示所述待访问的接口对应的所述目标用户。
在一种可能的实现方式中,所述权限参数还包括至少一个所属父权限的标识。
所述注解添加模块在所述权限管理模块根据所述每个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理之前,还用于:
根据所述每个接口对应的所述至少一个权限标识和所述至少一个所属父权限的标识,确定每一父权限对应的所有子权限;
根据所述每一父权限对应的所有子权限,在所述目标系统具有父权限的接口对应的代码上添加子权限的注解。
在一种可能的实现方式中,所述权限确定模块,在所述参数获取模块获取目标系统中的每个接口对应的权限参数之后,还用于:
根据所述每个接口对应的所述至少一个权限标识、所述至少一个所属权限类型、所述至少一个权限描述和所述至少一个所属父权限的标识,确定所述目标系统对应的第一权限管理关系表。
在一种可能的实现方式中,所述权限确定模块,还用于:
获取预存的所述目标系统对应的第二权限管理关系表,所述第二权限管理关系表的预存时刻在所述获取目标系统中的每个接口对应的权限参数的时刻之前;
根据所述第一权限管理关系表和所述第二权限管理关系表,确定所述目标系统的权限变更情况。
在一种可能的实现方式中,所述权限确定模块,具体用于:
根据所述每个接口对应的所述至少一个权限标识、所述至少一个所属权限类型、所述至少一个权限描述和所述至少一个所属父权限的标识,获得所述目标系统中每一父权限的接口对应的子权限的接口,以及子权限的所属权限类型和权限描述;
根据所述每一父权限的接口对应的子权限的接口,以及子权限的所属权限类型和权限描述,获得所述目标系统对应的所述第一权限管理关系表。
在一种可能的实现方式中,所述注解添加模块,具体用于:
根据所述每个接口的权限,对所述每个接口进行接口分类;
根据所述每个接口的分类结果,确定每一类接口对应的接口类标识,并将所述每一类接口对应的接口类标识分别添加到对应的每一类接口的各个接口的代码上;
根据所述每个接口的权限,在所述每一类接口中的任意一个接口对应的代码上添加权限注解。
在一种可能的实现方式中,所述权限管理模块,具体用于:
根据所述每一类接口的各个接口上添加的接口类标识,以及所述每一类接口中的所述任意一个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理。
第三方面,本申请实施例提供一种权限管理设备,包括:
处理器;
存储器;以及
计算机程序;
其中,所述计算机程序被存储在所述存储器中,并且被配置为由所述处理器执行,所述计算机程序包括用于执行如第一方面所述的方法的指令。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序使得服务器执行第一方面所述的方法。
第五方面,本申请实施例提供一种计算机程序产品,包括计算机指令,所述计算机指令被处理器执行时实现第一方面所述的方法。
本申请实施例提供的权限管理方法、装置、设备及存储介质,该方法通过获取目标系统中的每个接口对应的权限参数,从而,根据每个接口对应的权限参数,确定每个接口的权限,并根据每个接口的权限,在每个接口对应的代码上添加权限注解,即通过无侵入的方式在接口添加权限注解,无需修改原有的代码逻辑,处理过程简单,解决了传统的权限管理模型需要定义更多的权限内容去实现权限与接口的关系,处理复杂的问题,而且本申请实施例在每个接口对应的代码上添加权限注解,从代码中直观的体现接口所属权限,无需从数据库中查询接口对应的权限,一定程度上解决了数据库中存储的接口权限有可能有误的问题,提高了接口与其对应权限的准确性,进而,根据上述每个接口对应的代码上添加的权限注解,对使用目标系统的用户进行权限管理,简单、准确,适合应用。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种传统的权限管理模型示意图;
图2为本申请实施例提供的一种权限管理系统架构示意图;
图3为本申请实施例提供的一种权限管理方法的流程示意图;
图4为本申请实施例提供的一种权限管理模型示意图;
图5为本申请实施例提供的一种权限注解示意图;
图6为本申请实施例提供的另一种权限管理方法的流程示意图;
图7为本申请实施例提供的再一种权限管理方法的流程示意图;
图8为本申请实施例提供的又一种权限管理方法的流程示意图;
图9为本申请实施例提供的一种权限管理装置的结构示意图;
图10示出了本申请权限管理设备的一种可能的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”及“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
现有为了管理金融行业中用户的权限,业界已经提出了一些权限管理模型。其中,传统的权限管理模型一般有三层结构,用户-角色-权限。其中用户与角色是一对多关系,角色与权限是一对多关系,一个权限定义一种行为(一个接口)。示例性的,以管理用户访问某一金融企业系统的接口为例,图1示出一种传统的权限管理模型。上述金融企业系统中有4个接口,即接口1、接口2、接口3和接口4。上述权限管理模型中记录有两个用户,即用户1和用户2,访问上述金融企业系统。用户1对应角色1,用户2对应角色2和角色3。角色1对应权限1和权限2,角色2对应权限2,角色3对应权限3和权限4。权限1对应接口1,权限2对应接口2,权限3对应接口3,权限4对应接口4。上述权限管理模型根据上述用户与角色的对应关系,角色与权限的对应关系,以及权限与接口的对应关系,确定用户是否有访问上述金融企业系统接口的权限,对访问上述金融企业系统的用户进行权限管理。
然而,通常而言权限与接口的关系并不是一对一关系。如果需要赋予一个接口不同的权限,或者说一个权限可作用于多个接口,例如赋予上述图1中接口2对应权限1和权限2,权限1对应接口1和接口2等。对于传统的权限管理模型,需要定义更多的权限内容去实现,处理复杂。即要调整传统的权限管理模型的结构,使得权限与接口的关系满足实际情况,工作量较大。尤其是,权限较多和/或接口较多的情况,上述调整需要花费大量时间。
因此,本申请实施例提出一种权限管理方法,基于每个接口的权限,在每个接口对应的代码上添加权限注解,即通过无侵入的方式在接口添加权限注解,无需修改原有的代码逻辑,处理过程简单,解决了传统的权限管理模型需要定义更多的权限内容去实现权限与接口的关系,处理复杂的问题,而且本申请实施例在每个接口对应的代码上添加权限注解,从代码中直观的体现接口所属权限,无需从数据库中查询接口对应的权限,一定程度上解决了数据库中存储的接口权限有可能有误的问题,提高了接口与其对应权限的准确性,进而,根据上述每个接口对应的代码上添加的权限注解,对使用系统的用户进行权限管理,简单、准确,适合应用。
本申请实施例提供的权限管理方法可应用在金融企业系统的用户权限管理场景中,也可以应用于其他系统的用户权限管理场景中,例如网站系统、用户个人系统等的用户权限管理场景,本申请实施例对此不做特别限制。
可选地,图2为本申请实施例提供的一种权限管理系统架构示意图。在图2中,以金融企业系统的用户权限管理为例,上述架构包括接收装置201、管理装置202和显示装置203中至少一种。
可以理解的是,本申请实施例示意的结构并不构成对权限管理系统架构的具体限定。在本申请另一些可行的实施方式中,上述架构可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置,具体可根据实际应用场景确定,在此不做限制。图2所示的部件可以以硬件,软件,或软件与硬件的组合实现。
在具体实现过程中,管理装置202可以基于上述金融企业系统的每个接口的权限,在每个接口对应的代码上添加权限注解,进而,根据上述每个接口对应的代码上添加的权限注解,对使用上述金融企业系统的用户进行权限管理。其中,管理装置202通过无侵入的方式在接口添加权限注解,无需修改原有的代码逻辑,处理过程简单,解决了传统的权限管理模型需要定义更多的权限内容去实现权限与接口的关系,处理复杂的问题。
如果有用户发送访问请求至上述金融企业系统,即有用户访问上述金融企业系统的接口。接收装置201可以接收用户发送的访问请求等信息。其中,接收装置201可以是输入/输出接口,也可以是通信接口,具体根据实际情况确定,本申请实施例对此不做特别限制。
管理装置202可以首先根据上述访问请求确定上述用户要访问的上述金融企业系统的接口。然后在上述每个接口对应的代码上添加的权限注解中,确定上述用户要访问的接口对应的代码上添加的权限注解,进而,确定上述用户要访问的接口对应的目标用户,即具有访问上述用户要访问的接口的权限的用户。如果上述用户在上述目标用户中,即是具有访问上述用户要访问的接口的权限的用户,则管理装置202允许上述用户访问上述用户要访问的接口,否则,拒绝上述用户访问上述用户要访问的接口。
显示装置203可以对上述金融企业系统的每个接口的权限、上述目标用户等进行显示。
显示装置还可以是触摸显示屏,用于在显示上述内容的同时接收用户指令,以实现与用户的交互。
应理解,上述管理装置可以通过读取存储器中的指令并执行指令的方式实现,也可以通过芯片电路实现。
另外,本申请实施例描述的权限管理系统架构是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着系统架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
下面以几个实施例为例对本申请的技术方案进行描述,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图3为本申请实施例提供的一种权限管理方法的流程示意图,本申请实施例提供了一种权限管理方法,该方法可以应用于金融企业系统、网站系统或用户个人系统等的用户权限管理中,且该方法可以由任意执行权限管理方法的装置来执行,该装置可以通过软件和/或硬件实现。如图3所示,在图2所示系统架构的基础上,本申请实施例提供的权限管理方法包括如下步骤:
S301:获取目标系统中的每个接口对应的权限参数,其中,上述目标系统包括至少一个上述接口。
这里,上述目标系统为需要进行用户权限管理的系统,例如上述金融企业系统、网站系统或用户个人系统等,具体可以根据实际情况设置,本申请实施例对此不做特别限制。
其中,上述权限参数包括至少一个权限标识、至少一个所属权限类型和至少一个权限描述。这里,上述权限标识可以为权限ID、名称等。上述权限描述可以理解为权限具体内容描述。
示例性的,以执行主体为上述管理装置为例,上述管理装置可以根据上述目标系统的数据库中存储的接口与权限参数的对应关系,获取上述目标系统中的每个接口对应的权限参数。其中,上述接口与权限参数的对应关系可以由相关人员根据目标系统当前接口对应的权限参数确定并存储在目标系统的数据库中,而且在当前接口对应的权限参数变化时,相关人员还可以更新上述接口与权限参数的对应关系,从而,使得目标系统中存储的接口与权限参数的对应关系与实际情况相符,进而,保证上述管理装置获取到正确的目标系统中的每个接口对应的权限参数。
S302:根据上述每个接口对应的权限参数,确定上述每个接口的权限。
其中,上述每个接口的权限包括至少一个权限对象。
这里,还以执行主体为上述管理装置为例,上述管理装置可以根据上述每个接口对应的上述权限参数中每一个权限标识以及其所属权限类型和权限描述,获得一个权限对象,进而,根据每个接口对应的权限对象,确定每个接口的权限。
示例性的,假如某一接口的上述权限参数包括两个权限标识、两个所属权限类型和两个权限描述,例如权限ID 01,其所属权限类型为类型1,对应权限描述为描述1。权限ID02,其所属权限类型为类型2,对应权限描述为描述2。上述管理装置可以根据权限ID 01、其所属类型1和对应的描述1,获得一个权限对象P1,同样,可以根据权限ID 02、其所属类型2和对应的描述2,获得一个权限对象P2。进而,上述管理装置确定上述某一接口的权限包括P1和P2,可以表示为[P1,P2]。
另外,上述每个接口的权限中还包括接口标识,例如上述某一接口为接口1,该接口1的权限包括P1、P2和接口1,可以表示为([P1,P2],接口1),这样可以相关人员从该权限中就可以直接了解是哪个接口具有哪些权限,适合应用。
假如以图1提到的用户、角色和接口为例,这里,目标系统包括接口1、接口2、接口3和接口4。上述管理装置获取目标系统中的4个接口对应的权限参数,并根据每个接口对应的权限参数,确定每个接口的权限,例如接口1对应权限1和权限3,接口2对应权限2,接口3对应权限4,接口4对应权限1,示例性的,如图4所示。
这里,如果上述管理装置没有获取到目标系统中某一接口对应的权限参数,则确定其权限是允许使用目标系统的所有用户访问上述某一接口,上述管理装置后续可以不对上述某一接口添加权限注解。
S303:根据上述每个接口的权限,在上述每个接口对应的代码上添加权限注解。
在本申请实施例中,上述管理装置通过无侵入的方式在接口添加权限注解,无需修改原有的代码逻辑,处理过程简单,而且上述管理装置在每个接口对应的代码上添加权限注解,从代码中直观的体现接口所属权限,无需从数据库中查询接口对应的权限,一定程度上解决了数据库中存储的接口权限有可能有误的问题,提高了接口与其对应权限的准确性。
以上述接口1的权限为([P1,P2],接口1)为例,上述管理装置根据上述接口1的权限,在上述接口1对应的代码上添加权限注解([P1,P2],接口1),示例性的,如图5所示。
S304:根据上述每个接口对应的代码上添加的权限注解,对使用上述目标系统的用户进行权限管理。
这里,如果有用户要访问上述目标系统的某一接口,即有用户发送访问请求至上述目标系统。示例性的,上述访问请求携带待访问接口标识,该接口标识可以为接口名称、编号等。上述管理装置可以在获取上述访问请求后,首先根据上述待访问接口标识确定上述用户待访问的接口。然后在上述每个接口对应的代码上添加的权限注解中,确定上述待访问的接口对应的代码上添加的权限注解,进而,确定上述待访问的接口对应的目标用户,即具有访问上述待访问的接口的权限的用户。根据该目标用户,确定是否调用上述待访问的接口执行上述访问请求,即确定是否允许上述用户访问上述待访问的接口。
其中,上述管理装置对使用上述目标系统的用户进行权限管理的方式支持从接口层面反查合法用户的方式。即上述管理装置通过注解的方式在接口的代码上标记了接口的权限,当用户访问某一接口时,可以快速的知道接口所具有的全部权限信息,进而根据该权限信息逆向回溯用户。对于复杂的系统,特别是对于权限划分精细的系统,逆向回溯的方式相比传统的用户权限管理流程效率更高。因为传统的用户权限管理流程一般会通过广度优先的方式,即根据用户去往下检索是否有对应的权限,这种方式需要额外的辅助信息,例如需要根据权限名(或者URL)去从数据库中存储的信息中获取权限与接口的关系,导致整个处理周期较长,效率较低。
另外,上述权限参数还包括至少一个所属父权限的标识。
上述管理装置还可以根据上述每个接口对应的上述至少一个权限标识和上述至少一个所属父权限的标识,确定每一父权限对应的所有子权限,进而,根据每一父权限对应的所有子权限,在上述目标系统具有父权限的接口对应的代码上添加子权限的注解,从而,根据上述每个接口对应的代码上添加的权限注解,对使用上述目标系统的用户进行权限管理。
其中,上述管理装置在上述权限参数中维护父子权限的关系,可以确定当前权限是否有所属父权限。如果某一接口的某一权限属于其他权限的父权限,则上述管理装置可以在上述某一接口对应的代码上添加子权限的注解,即上述某一接口同时会具有其所属所有子权限对应的权限,这样,本申请实施例可以采用多种权限注解方式在接口对应的代码上添加权限注解,提高权限注解的灵活性,满足应用需要。
本申请实施例通过获取目标系统中的每个接口对应的权限参数,从而,根据每个接口对应的权限参数,确定每个接口的权限,并根据每个接口的权限,在每个接口对应的代码上添加权限注解,即通过无侵入的方式在接口添加权限注解,无需修改原有的代码逻辑,处理过程简单,解决了传统的权限管理模型需要定义更多的权限内容去实现权限与接口的关系,处理复杂的问题,而且本申请实施例在每个接口对应的代码上添加权限注解,从代码中直观的体现接口所属权限,无需从数据库中查询接口对应的权限,一定程度上解决了数据库中存储的接口权限有可能有误的问题,提高了接口与其对应权限的准确性,进而,根据上述每个接口对应的代码上添加的权限注解,对使用目标系统的用户进行权限管理,简单、准确,适合应用。
另外,上述管理装置在根据上述目标权限注解,确定上述待访问的接口对应的目标用户时,考虑预存的权限与角色的对应关系,以及预存的角色与用户的对应关系。图6为本申请实施例提出的另一种权限管理方法的流程示意图。如图6所示,该方法包括:
S601:获取目标系统中的每个接口对应的权限参数,其中,上述目标系统包括至少一个上述接口。
S602:根据上述每个接口对应的权限参数,确定上述每个接口的权限。
S603:根据上述每个接口的权限,在上述每个接口对应的代码上添加权限注解。
其中,步骤S601-S603与上述步骤S301-S303的实现方式相同,此处不再赘述。
S604:在获取用户的访问请求后,该访问请求携带待访问接口标识,根据该待访问接口标识和上述每个接口对应的代码上添加的权限注解,获得用户待访问的接口对应的代码上添加的目标权限注解。
这里,上述提到如果上述管理装置没有获取到目标系统中某一接口对应的权限参数,则确定其权限是允许使用目标系统的所有用户访问上述某一接口,上述管理装置后续可以不对上述某一接口添加权限注解。
如果上述用户待访问的接口对应的代码上没有添加目标权限注解,则上述管理装置可以直接调用上述待访问的接口执行上述访问请求。
S605:根据预存的权限与角色的对应关系,确定上述目标权限注解对应的目标角色。
S606:根据预存的角色与用户的对应关系,以及上述目标角色,确定上述待访问的接口对应的目标用户。
其中,上述权限与角色的对应关系可以由相关人员根据实际情况设置,并存储在上述目标系统的数据库中。同样,上述角色与用户的对应关系也可以由相关人员根据实际情况设置,并存储在上述目标系统的数据库中。
上述管理装置可以首先根据上述权限与角色的对应关系,确定上述目标权限注解对应的目标角色,进而,根据上述角色与用户的对应关系,以及上述目标角色,确定上述待访问的接口对应的目标用户,即具有访问上述待访问的接口的权限的用户。
S607:根据上述目标用户,确定是否调用上述待访问的接口执行上述访问请求。
示例性的,上述管理装置可以将上述目标用户与上述用户进行比较,如果上述目标用户中包含上述用户,则调用上述待访问的接口执行上述访问请求。如果上述目标用户中不包含上述用户,则拒绝上述访问请求,并输出拦截日志提示上述待访问的接口对应的上述目标用户。
本申请实施例在每个接口对应的代码上添加权限注解,从代码中直观的体现接口所属权限,目标系统的数据库中仅需维护用户-角色、角色-权限关系两张表,降低了数据库中存储接口权限有误导致后续处理出错的问题,提高了接口与其对应权限的准确性。而且本申请实施例通过无侵入的方式在接口添加权限注解,无需修改原有的代码逻辑,处理过程简单,解决了传统的权限管理模型需要定义更多的权限内容去实现权限与接口的关系,处理复杂的问题,进而,根据上述每个接口对应的代码上添加的权限注解,对使用目标系统的用户进行权限管理,简单、准确,适合应用。
另外,由上述可知,权限参数还包括至少一个所属父权限的标识。上述管理装置在获取目标系统中的每个接口对应的权限参数之后,还考虑确定目标系统对应的第一权限管理关系表,并根据预存的目标系统对应的第二权限管理关系表,确定目标系统的权限变更情况。图7为本申请实施例提出的再一种权限管理方法的流程示意图。如图7所示,该方法包括:
S701:获取目标系统中的每个接口对应的权限参数,其中,上述目标系统包括至少一个上述接口。
上述权限参数包括上述目标系统包括至少一个上述接口,上述权限参数包括至少一个权限标识、至少一个所属权限类型和至少一个权限描述。
S702:上述权限参数还包括至少一个所属父权限的标识,根据上述每个接口对应的至少一个权限标识、至少一个所属权限类型、至少一个权限描述和至少一个所属父权限的标识,确定上述目标系统对应的第一权限管理关系表。
S703:获取预存的上述目标系统对应的第二权限管理关系表,该第二权限管理关系表的预存时刻在上述获取目标系统中的每个接口对应的权限参数的时刻之前。
S704:根据上述第一权限管理关系表和上述第二权限管理关系表,确定上述目标系统的权限变更情况。
这里,上述管理装置可以基于上述权限参数在代码中定义,通过扫描的方式获取上述目标系统中的每个接口的所有权限内容。如果某一接口的某一权限拥有父权限,则先跳过,否则可以认定该权限是顶级权限。这样,上述管理装置可以进行权限扫描,确定目标系统对应的第一权限管理关系表并输出,即上述管理装置可以在本地代码生成清晰直观的权限管理关系。进而,上述管理装置获取预存的所述目标系统对应的第二权限管理关系表,即历史权限管理关系表,将上述第一权限管理关系表和历史权限管理关系表进行比较,清晰的展示出目标系统的权限变更情况,方便相关人员能够及时了解目标系统的权限变化,并进行相应处理,适合应用。
示例性的,上述管理装置在确定目标系统对应的第一权限管理关系表时,可以根据上述每个接口对应的上述至少一个权限标识、至少一个所属权限类型、至少一个权限描述和至少一个所属父权限的标识,获得上述目标系统中每一父权限的接口对应的子权限的接口,以及子权限的所属权限类型和权限描述,进而,根据该每一父权限的接口对应的子权限的接口,以及子权限的所属权限类型和权限描述,获得上述目标系统对应的第一权限管理关系表。
S705:根据上述每个接口对应的权限参数,确定上述每个接口的权限。
S706:根据上述每个接口的权限,在上述每个接口对应的代码上添加权限注解。
S707:根据所述每个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理。
其中,步骤S705-S707与上述步骤S302-S304的实现方式相同,此处不再赘述。
本申请实施例可以在本地代码生成清晰直观的权限管理关系,并可以将该权限管理关系表和历史权限管理关系表进行比较,展示出目标系统的权限变更情况,方便相关人员能够及时了解目标系统的权限变化,并进行相应处理。而且本申请实施例通过无侵入的方式在接口添加权限注解,无需修改原有的代码逻辑,处理过程简单,解决了传统的权限管理模型需要定义更多的权限内容去实现权限与接口的关系,处理复杂的问题。另外本申请实施例在每个接口对应的代码上添加权限注解,从代码中直观的体现接口所属权限,无需从数据库中查询接口对应的权限,一定程度上解决了数据库中存储的接口权限有可能有误的问题,提高了接口与其对应权限的准确性,进而,根据上述每个接口对应的代码上添加的权限注解,对使用目标系统的用户进行权限管理,简单、准确,适合应用。
这里,上述管理装置在上述根据上述每个接口的权限,在上述每个接口对应的代码上添加权限注解之前,还考虑根据上述每个接口的权限,对上述每个接口进行接口分类,进而,根据分类结果,在上述目标系统的接口对应的代码上添加权限注解。图8为本申请实施例提出的又一种权限管理方法的流程示意图。如图8所示,该方法包括:
S801:获取目标系统中的每个接口对应的权限参数,其中,上述目标系统包括至少一个上述接口。
S802:根据上述每个接口对应的权限参数,确定上述每个接口的权限。
其中,步骤S801-S802与上述步骤S301-S302的实现方式相同,此处不再赘述。
S803:根据上述每个接口的权限,对上述每个接口进行接口分类。
这里,加入接口1的权限和接口2的权限相同,则上述管理装置可以将接口1和接口2归为一类。其中,上述接口1的权限和接口2的权限相同可以理解为接口1对应的权限参数与接口2对应的权限参数相同。
S804:根据上述每个接口的分类结果,确定每一类接口对应的接口类标识,并将上述每一类接口对应的接口类标识分别添加到对应的每一类接口的各个接口的代码上。
示例性的,如果有四个接口,即接口1、接口2、接口3和接口4,接口1的权限和接口2的权限相同,接口3的权限和接口4的权限相同。在上一步骤中,上述管理装置将接口1和接口2归为一类,将接口3和接口4归为另一类。这里,进一步地,上述管理装置根据上述每个接口的分类结果,确定每一类接口对应的接口类标识,例如上述接口1和接口2归为一类,其接口类标识为类1,上述接口3和接口4归为一类,其接口类标识为类2。上述管理装置可以将上述每一类接口对应的接口类标识分别添加到对应的每一类接口的各个接口的代码上,即将上述类1分别添加到接口1的代码上,以及接口2的代码上,将上述类2分别添加到接口3的代码上,以及接口4的代码上。
S805:根据上述每个接口的权限,在上述每一类接口中的任意一个接口对应的代码上添加权限注解。
这里,对于每一类接口,上述管理装置只需在每一类接口中的任意一个接口对应的代码上添加权限注解,无需在每一个接口对应的代码上添加权限注解,简化权限注解添加步骤,使得实现权限与接口关系的处理过程更简单,适合应用。
S806:根据上述每一类接口的各个接口上添加的接口类标识,以及上述每一类接口中的上述任意一个接口对应的代码上添加的权限注解,对使用上述目标系统的用户进行权限管理。
这里,如果有用户要访问上述目标系统的某一接口,即有用户发送访问请求至上述金融企业系统。示例性的,上述访问请求携带待访问接口标识,该接口标识可以为接口名称、编号等。上述管理装置可以在获取上述访问请求后,首先根据上述待访问接口标识确定上述用户待访问的接口。然后根据上述每一类接口的各个接口上添加的接口类标识,获得上述用户待访问的接口上添加的目标接口类标识,进而,根据该目标接口类标识,以及上述每一类接口中的上述任意一个接口对应的代码上添加的权限注解,确定上述待访问的接口对应的权限注解,进而,确定上述待访问的接口对应的目标用户,即具有访问上述待访问的接口的权限的用户。根据该目标用户,确定是否调用上述待访问的接口执行上述访问请求,即确定是否允许上述用户访问上述待访问的接口。
这里,上述提到如果上述管理装置没有获取到目标系统中某一接口对应的权限参数,则确定其权限是允许使用目标系统的所有用户访问上述某一接口,上述管理装置后续可以不对上述某一接口添加权限注解。相应的,上述管理装置可以将没有添加权限注解的接口归为一类,确定该类接口对应的接口类标识,并将该类接口对应的接口类标识分别添加到对应的该类接口的各个接口的代码上。
如果上述用户待访问的接口对应的代码上没有添加目标权限注解,则上述管理装置可以直接调用上述待访问的接口执行上述访问请求。
本申请实施例对目标系统的各个接口进行分类,分类后只需在每一类接口中的任意一个接口对应的代码上添加权限注解,无需在每一个接口对应的代码上添加权限注解,简化权限注解添加步骤。而且本申请实施例通过无侵入的方式在接口添加权限注解,无需修改原有的代码逻辑,处理过程简单,解决了传统的权限管理模型需要定义更多的权限内容去实现权限与接口的关系,处理复杂的问题。另外本申请实施例在每个接口对应的代码上添加权限注解,从代码中直观的体现接口所属权限,无需从数据库中查询接口对应的权限,一定程度上解决了数据库中存储的接口权限有可能有误的问题,提高了接口与其对应权限的准确性,进而,根据上述每个接口对应的代码上添加的权限注解,对使用目标系统的用户进行权限管理,简单、准确,适合应用。
对应于上文实施例的权限管理方法,图9为本申请实施例提供的权限管理装置的结构示意图。为了便于说明,仅示出了与本申请实施例相关的部分。图9为本申请实施例提供的一种权限管理装置的结构示意图,该权限管理装置90包括:参数获取模块901、权限确定模块902、注解添加模块903以及权限管理模块904。这里的权限管理装置可以是上述管理装置本身,或者是实现上述管理装置的功能的芯片或者集成电路。这里需要说明的是,参数获取模块、权限确定模块、注解添加模块以及权限管理模块的划分只是一种逻辑功能的划分,物理上两者可以是集成的,也可以是独立的。
其中,参数获取模块901,用于获取目标系统中的每个接口对应的权限参数,其中,所述目标系统包括至少一个所述接口。
权限确定模块902,用于根据所述每个接口对应的权限参数,确定所述每个接口的权限。
注解添加模块903,用于根据所述每个接口的权限,在所述每个接口对应的代码上添加权限注解。
权限管理模块904,用于根据所述每个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理。
在一种可能的实现方式中,所述权限参数包括至少一个权限标识、至少一个所属权限类型和至少一个权限描述,所述待添加的权限注解包括至少一个权限对象。
所述权限确定模块902,具体用于:
根据所述每个接口对应的所述权限参数中每一个权限标识以及其所属权限类型和权限描述,获得一个权限对象;
根据所述每个接口对应的权限对象,确定所述每个接口的权限。
在一种可能的实现方式中,所述权限管理模块904,具体用于:
在获取所述用户的访问请求后,所述访问请求携带待访问接口标识,根据所述待访问接口标识和所述每个接口对应的代码上添加的权限注解,获得所述用户待访问的接口对应的代码上添加的目标权限注解;
根据所述目标权限注解,确定所述待访问的接口对应的目标用户;
根据所述目标用户,确定是否调用所述待访问的接口执行所述访问请求。
在一种可能的实现方式中,所述权限管理模块904,具体用于:
根据预存的权限与角色的对应关系,确定所述目标权限注解对应的目标角色;
根据预存的角色与用户的对应关系,以及所述目标角色,确定所述目标用户。
在一种可能的实现方式中,所述权限管理模块904,具体用于:
将所述目标用户与所述用户进行比较;
若所述目标用户中包含所述用户,则调用所述待访问的接口执行所述访问请求。
在一种可能的实现方式中,所述权限管理模块904,具体用于:
若所述目标用户中不包含所述用户,则拒绝所述访问请求,并输出拦截日志提示所述待访问的接口对应的所述目标用户。
在一种可能的实现方式中,所述权限参数还包括至少一个所属父权限的标识。
所述注解添加模块903在所述权限管理模块根据所述每个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理之前,还用于:
根据所述每个接口对应的所述至少一个权限标识和所述至少一个所属父权限的标识,确定每一父权限对应的所有子权限;
根据所述每一父权限对应的所有子权限,在所述目标系统具有父权限的接口对应的代码上添加子权限的注解。
在一种可能的实现方式中,所述权限确定模块902,在所述参数获取模块901获取目标系统中的每个接口对应的权限参数之后,还用于:
根据所述每个接口对应的所述至少一个权限标识、所述至少一个所属权限类型、所述至少一个权限描述和所述至少一个所属父权限的标识,确定所述目标系统对应的第一权限管理关系表。
在一种可能的实现方式中,所述权限确定模块902,还用于:
获取预存的所述目标系统对应的第二权限管理关系表,所述第二权限管理关系表的预存时刻在所述获取目标系统中的每个接口对应的权限参数的时刻之前;
根据所述第一权限管理关系表和所述第二权限管理关系表,确定所述目标系统的权限变更情况。
在一种可能的实现方式中,所述权限确定模块902,具体用于:
根据所述每个接口对应的所述至少一个权限标识、所述至少一个所属权限类型、所述至少一个权限描述和所述至少一个所属父权限的标识,获得所述目标系统中每一父权限的接口对应的子权限的接口,以及子权限的所属权限类型和权限描述;
根据所述每一父权限的接口对应的子权限的接口,以及子权限的所属权限类型和权限描述,获得所述目标系统对应的所述第一权限管理关系表
在一种可能的实现方式中,所述注解添加模块903,具体用于:
根据所述每个接口的权限,对所述每个接口进行接口分类;
根据所述每个接口的分类结果,确定每一类接口对应的接口类标识,并将所述每一类接口对应的接口类标识分别添加到对应的每一类接口的各个接口的代码上;
根据所述每个接口的权限,在所述每一类接口中的任意一个接口对应的代码上添加权限注解。
在一种可能的实现方式中,所述权限管理模块904,具体用于:
根据所述每一类接口的各个接口上添加的接口类标识,以及所述每一类接口中的所述任意一个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理。
本申请实施例提供的装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本申请实施例此处不再赘述。
可选地,图10示意性地提供本申请所述权限管理设备的一种可能的基本硬件架构。
参见图10,权限管理设备包括至少一个处理器1001以及通信接口1003。进一步可选的,还可以包括存储器1002和总线1004。
其中,权限管理设备中,处理器1001的数量可以是一个或多个,图10仅示意了其中一个处理器1001。可选地,处理器1001,可以是CPU、图形处理器(graphics processingunit,GPU)或者数字信号处理器(digital signal processor,DSP)。如果权限管理设备具有多个处理器1001,多个处理器1001的类型可以不同,或者可以相同。可选地,权限管理设备的多个处理器1001还可以集成为多核处理器。
存储器1002存储计算机指令和数据;存储器1002可以存储实现本申请提供的上述权限管理方法所需的计算机指令和数据,例如,存储器1002存储用于实现上述权限管理方法的步骤的指令。存储器1002可以是以下存储介质的任一种或任一种组合:非易失性存储器(例如只读存储器(ROM)、固态硬盘(SSD)、硬盘(HDD)、光盘),易失性存储器。
通信接口1003可以为所述至少一个处理器提供信息输入/输出。也可以包括以下器件的任一种或任一种组合:网络接口(例如以太网接口)、无线网卡等具有网络接入功能的器件。
可选的,通信接口1003还可以用于权限管理设备与其它计算设备或者终端进行数据通信。
进一步可选的,图10用一条粗线表示总线1004。总线1004可以将处理器1001与存储器1002和通信接口1003连接。这样,通过总线1004,处理器1001可以访问存储器1002,还可以利用通信接口1003与其它计算设备或者终端进行数据交互。
在本申请中,权限管理设备执行存储器1002中的计算机指令,使得权限管理设备实现本申请提供的上述权限管理方法,或者使得权限管理设备部署上述的权限管理装置。
从逻辑功能划分来看,示例性的,如图10所示,存储器1002中可以包括参数获取模块901、权限确定模块902、注解添加模块903以及权限管理模块904。这里的包括仅仅涉及存储器中所存储的指令被执行时可以分别实现参数获取模块、权限确定模块、注解添加模块以及权限管理模块的功能,而不限定是物理上的结构。
另外,上述的权限管理设备除了可以像上述图10通过软件实现外,也可以作为硬件模块,或者作为电路单元,通过硬件实现。
本申请提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序使得服务器执行本申请提供的上述权限管理方法。
本申请实施例提供一种计算机程序产品,包括计算机指令,所述计算机指令被处理器执行时实现本申请提供的上述权限管理方法。
本申请提供一种芯片,包括至少一个处理器和通信接口,所述通信接口为所述至少一个处理器提供信息输入和/或输出。进一步,所述芯片还可以包含至少一个存储器,所述存储器用于存储计算机指令。所述至少一个处理器用于调用并运行该计算机指令,以执行本申请提供的上述权限管理方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
Claims (16)
1.一种权限管理方法,其特征在于,包括:
获取目标系统中的每个接口对应的权限参数,其中,所述目标系统包括至少一个所述接口;
根据所述每个接口对应的权限参数,确定所述每个接口的权限;
根据所述每个接口的权限,在所述每个接口对应的代码上添加权限注解;
根据所述每个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理。
2.根据权利要求1所述的方法,其特征在于,所述权限参数包括至少一个权限标识、至少一个所属权限类型和至少一个权限描述,所述每个接口的权限包括至少一个权限对象;
所述根据所述每个接口对应的权限参数,确定所述每个接口的权限,包括:
根据所述每个接口对应的所述权限参数中每一个权限标识以及其所属权限类型和权限描述,获得一个权限对象;
根据所述每个接口对应的权限对象,确定所述每个接口的权限。
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述每个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理,包括:
在获取所述用户的访问请求后,所述访问请求携带待访问接口标识,根据所述待访问接口标识和所述每个接口对应的代码上添加的权限注解,获得所述用户待访问的接口对应的代码上添加的目标权限注解;
根据所述目标权限注解,确定所述待访问的接口对应的目标用户;
根据所述目标用户,确定是否调用所述待访问的接口执行所述访问请求。
4.根据权利要求3所述的方法,其特征在于,所述根据所述目标权限注解,确定所述待访问的接口对应的目标用户,包括:
根据预存的权限与角色的对应关系,确定所述目标权限注解对应的目标角色;
根据预存的角色与用户的对应关系,以及所述目标角色,确定所述目标用户。
5.根据权利要求3所述的方法,其特征在于,所述根据所述目标用户,确定是否调用所述待访问的接口执行所述访问请求,包括:
将所述目标用户与所述用户进行比较;
若所述目标用户中包含所述用户,则调用所述待访问的接口执行所述访问请求。
6.根据权利要求5所述的方法,其特征在于,在所述将所述目标用户与所述用户进行比较之后,还包括:
若所述目标用户中不包含所述用户,则拒绝所述访问请求,并输出拦截日志提示所述待访问的接口对应的所述目标用户。
7.根据权利要求2所述的方法,其特征在于,所述权限参数还包括至少一个所属父权限的标识;
在所述根据所述每个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理之前,还包括:
根据所述每个接口对应的所述至少一个权限标识和所述至少一个所属父权限的标识,确定每一父权限对应的所有子权限;
根据所述每一父权限对应的所有子权限,在所述目标系统具有父权限的接口对应的代码上添加子权限的注解。
8.根据权利要求2所述的方法,其特征在于,所述权限参数还包括至少一个所属父权限的标识;
在所述获取目标系统中的每个接口对应的权限参数之后,还包括:
根据所述每个接口对应的所述至少一个权限标识、所述至少一个所属权限类型、所述至少一个权限描述和所述至少一个所属父权限的标识,确定所述目标系统对应的第一权限管理关系表。
9.根据权利要求8所述的方法,其特征在于,在所述确定所述目标系统对应的第一权限管理关系表之后,还包括:
获取预存的所述目标系统对应的第二权限管理关系表,所述第二权限管理关系表的预存时刻在所述获取目标系统中的每个接口对应的权限参数的时刻之前;
根据所述第一权限管理关系表和所述第二权限管理关系表,确定所述目标系统的权限变更情况。
10.根据权利要求8所述的方法,其特征在于,所述根据所述每个接口对应的所述至少一个权限标识、所述至少一个所属权限类型、所述至少一个权限描述和所述至少一个所属父权限的标识,确定所述目标系统对应的第一权限管理关系表,包括:
根据所述每个接口对应的所述至少一个权限标识、所述至少一个所属权限类型、所述至少一个权限描述和所述至少一个所属父权限的标识,获得所述目标系统中每一父权限的接口对应的子权限的接口,以及子权限的所属权限类型和权限描述;
根据所述每一父权限的接口对应的子权限的接口,以及子权限的所属权限类型和权限描述,获得所述目标系统对应的所述第一权限管理关系表。
11.根据权利要求1或2所述的方法,其特征在于,在所述根据所述每个接口的权限,在所述每个接口对应的代码上添加权限注解之前,还包括:
根据所述每个接口的权限,对所述每个接口进行接口分类;
所述根据所述每个接口的权限,在所述每个接口对应的代码上添加权限注解,包括:
根据所述每个接口的分类结果,确定每一类接口对应的接口类标识,并将所述每一类接口对应的接口类标识分别添加到对应的每一类接口的各个接口的代码上;
根据所述每个接口的权限,在所述每一类接口中的任意一个接口对应的代码上添加权限注解。
12.根据权利要求11所述的方法,其特征在于,所述根据所述每个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理,包括:
根据所述每一类接口的各个接口上添加的接口类标识,以及所述每一类接口中的所述任意一个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理。
13.一种权限管理装置,其特征在于,包括:
参数获取模块,用于获取目标系统中的每个接口对应的权限参数,其中,所述目标系统包括至少一个所述接口;
权限确定模块,用于根据所述每个接口对应的权限参数,确定所述每个接口的权限;
注解添加模块,用于根据所述每个接口的权限,在所述每个接口对应的代码上添加权限注解;
权限管理模块,用于根据所述每个接口对应的代码上添加的权限注解,对使用所述目标系统的用户进行权限管理。
14.一种权限管理设备,其特征在于,包括:
处理器;
存储器;以及
计算机程序;
其中,所述计算机程序被存储在所述存储器中,并且被配置为由所述处理器执行,所述计算机程序包括用于执行如权利要求1-12任一项所述的方法的指令。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序使得服务器执行权利要求1-12任一项所述的方法。
16.一种计算机程序产品,其特征在于,包括计算机指令,所述计算机指令被处理器执行权利要求1-12任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011425855.0A CN112395575A (zh) | 2020-12-08 | 2020-12-08 | 权限管理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011425855.0A CN112395575A (zh) | 2020-12-08 | 2020-12-08 | 权限管理方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112395575A true CN112395575A (zh) | 2021-02-23 |
Family
ID=74624726
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011425855.0A Pending CN112395575A (zh) | 2020-12-08 | 2020-12-08 | 权限管理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112395575A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113922999A (zh) * | 2021-09-29 | 2022-01-11 | 上加下信息技术成都有限公司 | 基于路由管理的权限管理配置方法、系统及电子设备 |
-
2020
- 2020-12-08 CN CN202011425855.0A patent/CN112395575A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113922999A (zh) * | 2021-09-29 | 2022-01-11 | 上加下信息技术成都有限公司 | 基于路由管理的权限管理配置方法、系统及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107798038B (zh) | 数据响应方法及数据响应设备 | |
CN108900353B (zh) | 故障告警方法及终端设备 | |
CN110471949B (zh) | 数据血缘分析方法、装置、系统、服务器及存储介质 | |
CN111142863B (zh) | 一种页面生成的方法及装置 | |
US20210209162A1 (en) | Method for processing identity information, electronic device, and storage medium | |
CN113268336A (zh) | 一种服务的获取方法、装置、设备以及可读介质 | |
CN112948275A (zh) | 测试数据生成方法、装置、设备及存储介质 | |
CN102150090A (zh) | 为自动化系统中的分布式操作提供控制信息的方法、计算机程序和自动化系统 | |
CN112395575A (zh) | 权限管理方法、装置、设备及存储介质 | |
CN111625532A (zh) | 数据血缘关系处理方法、装置、计算机设备及存储介质 | |
CN113434542A (zh) | 数据关系识别方法、装置、电子设备及存储介质 | |
CN111639903A (zh) | 一种针对架构变更的评审处理方法及相关设备 | |
CN114124977B (zh) | 跨租户间的数据分享方法、装置和电子设备 | |
CN113867700B (zh) | 模型构建方法、展示平台、服务器及存储介质 | |
CN114925050A (zh) | 基于知识库的数据核查方法、装置、电子设备及存储介质 | |
CN113935847A (zh) | 线上流程的风险处理方法、装置、服务器及介质 | |
US11763014B2 (en) | Production protection correlation engine | |
CN111045983A (zh) | 核电站电子文件管理方法、装置、终端设备及介质 | |
JP2017045106A (ja) | 情報処理装置及び情報処理プログラム | |
CN112433821B (zh) | 业务模型的搭建方法、装置、电子设备及介质 | |
CN113722590B (zh) | 基于人工智能的医学信息推荐方法、装置、设备及介质 | |
CN116167348B (zh) | 一种用于工资表生成的信息处理方法及装置 | |
CN111026732B (zh) | 动态化巡采巡查方法和系统 | |
CN111193595B (zh) | 电子签名的错误检测方法、装置、设备和存储介质 | |
CN112416951B (zh) | 数据传递方法及其装置、计算机可存储介质 |
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 |