CN115618408A - 一种功能权限控制方法及系统 - Google Patents
一种功能权限控制方法及系统 Download PDFInfo
- Publication number
- CN115618408A CN115618408A CN202211226864.6A CN202211226864A CN115618408A CN 115618408 A CN115618408 A CN 115618408A CN 202211226864 A CN202211226864 A CN 202211226864A CN 115618408 A CN115618408 A CN 115618408A
- Authority
- CN
- China
- Prior art keywords
- page
- button
- menu
- authority
- user
- 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/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/629—Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- User Interface Of Digital Computer (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及信息系统领域,具体提供了一种功能权限控制方法,具有如下步骤:S1、创建权限配置相关表并分配权限相关数据;S2、用户登录系统后,查询出用户角色所拥有的页面菜单并在浏览器上显示;S3、点击某一个页面,查询该页面所拥有的按钮菜单数据,并把页面中有权限的按钮显示出来,没权限的按钮隐藏;S4、点击按钮时,不管是打开新的页面,还是往后端发送请求,对权限进行校验,校验通过放行,否则禁止访问并给出提示。与现有技术相比,本发明在现有文献方案基础上增加了对后端接口的校验,能够实现在前端无法实现的权限控制。
Description
技术领域
本发明涉及信息系统领域,具体提供一种功能权限控制方法及系统。
背景技术
在应用系统中,有许多的页面及页面上的菜单功能,还有许多不同角色的用户,需要对不同的角色设置不同的操作权限。现有的权限控制方法有对角色分配页面及页面上的菜单,没有分配到的菜单要在页面上隐藏。
这种实现方式的弊端是对于前后端分离的系统,简单的隐藏按钮菜单并不能达到真正权限控制的目的,可以使用postman等工具模拟请求,达到访问没有分配功能的目的。
发明内容
本发明是针对上述现有技术的不足,提供一种实用性强的功能权限控制方法。
本发明进一步的技术任务是提供一种设计合理,安全适用的功能权限控制系统。
本发明解决其技术问题所采用的技术方案是:
一种功能权限控制方法,具有如下步骤:
S1、创建权限配置相关表并分配权限相关数据;
S2、用户登录系统后,查询出用户角色所拥有的页面菜单并在浏览器上显示;
S3、点击某一个页面,查询该页面所拥有的按钮菜单数据,并把页面中有权限的按钮显示出来,没权限的按钮隐藏;
S4、点击按钮时,不管是打开新的页面,还是往后端发送请求,对权限进行校验,校验通过放行,否则禁止访问并给出提示。
进一步的,在步骤S1中,相关表包括页面表、按钮表、接口表以及用户表,所述页面表存储页面菜单数据,包括字段信息,存储角色与页面菜单之间关系的表;
所述按钮表存储按钮菜单数据,包括字段信息,存储角色与按钮菜单之间关系的表;
所述接口表存储按钮与后端接口之间关系的表;
所述用户表存储用户数据,包括角色字段。
进一步的,在步骤S2中,用户登录系统后,查询出用户角色所拥有的菜单列表并展示;其中菜单展示包括在浏览器上显示一级、二级等各级有权限的页面菜单,没有权限的各级菜单不会展示出来,并且即使直接输入url也会给出没有权限的提示。
进一步的,在步骤S3中,加载菜单页面时,查询出用户角色所拥有的页面按钮数据并展示到页面中;
这一步是细分页面菜单下的按钮菜单,只展示有权限的按钮。
进一步的,在步骤S4中,点击按钮,对按钮权限校验;这一步是对按钮级别的权限校验,点击按钮后,如果是打开新的页面,则校验是否拥有该页面的权限,对于没有权限的按钮,即使直接输入url也会给出没有权限的提示;
如果是去请求后端接口,在后端检查角色用户是否有用权限,进而决定是否放行。
一种功能权限控制系统,包括权限配置模块、前端展示模块和权限校验模块,所述权限配置模块用于创建权限配置相关表并分配权限相关数据;
所述前端展示模块用于对页面菜单、按钮菜单进行展示和隐藏;
所述权限校验模块用于对url页面、后端接口进行权限校验,拦截没有权限的操作行为。
进一步的,所述权限配置模块包括对页面、按钮菜单的配置和对按钮-接口配置,对角色-菜单按钮配置,其中对页面、按钮菜单的配置是把系统中的页面菜单、页面中的按钮菜单梳理出来,存储到数据库中;
对按钮-接口配置是配置按钮操作与后端接口的关联关系,一个按钮可以对应多个接口,一个接口也可以在多个按钮中出现,按钮与接口之间是多对多的关系;对角色-菜单按钮配置是用来为角色配置页面菜单、按钮菜单。
进一步的,所述前端展示模块对页面菜单、按钮菜单进行展示和隐藏;
对于页面菜单,当用户登陆后,首先查询出用户对应的角色下的页面菜单列表,前端根据菜单列表动态展示页面菜单;对于按钮菜单,当用户点击具体页面菜单时,请求后端接口,根据页面菜单ID、用户角色查询出用户所拥有的按钮列表,每个按钮菜单会有一个唯一ID,前端的按钮组件根据列表中是否存在对应的按钮ID进行隐藏或者显示。
进一步的,所述权限校验模块直接通过postman请求没有权限接口的情况;
当用户访问后端接口时,后端拦截器拦住请求,根据请求里携带的用户信息查询出用户时候拥有接口的访问权限,如果有权限则直接放行,否则禁止访问并返回提示信息。
本发明的一种功能权限控制方法及系统和现有技术相比,具有以下突出的有益效果:
本发明在现有文献方案基础上增加了对后端接口的校验,能够实现在前端无法实现的权限控制。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
附图1是一种功能权限控制方法的流程示意图;
附图2是一种功能权限控制系统的框图。
具体实施方式
为了使本技术领域的人员更好的理解本发明的方案,下面结合具体的实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例都属于本发明保护的范围。
下面给出一个最佳实施例:
如图1所示,本实施例中的一种功能权限控制方法,具有如下步骤:
S1、创建权限配置相关表并分配权限相关数据;
相关表包括页面表、按钮表、接口表以及用户表,所述页面表存储页面菜单数据,至少包括唯一ID、页面路径、菜单名称、父级菜单等字段信息,存储角色与页面菜单之间关系的表。
按钮表存储按钮菜单数据,要包含唯一ID、所属的页面菜单ID等字段信息,存储角色与按钮菜单之间关系的表。
接口表存储按钮与后端接口之间关系的表;
用户表存储用户数据,包括角色字段。
S2、用户登录系统后,查询出用户角色所拥有的页面菜单并在浏览器上显示;
用户登录系统后,查询出用户角色所拥有的菜单列表并展示;其中菜单展示包括在浏览器上显示一级、二级等各级有权限的页面菜单,没有权限的各级菜单不会展示出来,并且即使直接输入url也会给出没有权限的提示。
S3、点击某一个页面,查询该页面所拥有的按钮菜单数据,并把页面中有权限的按钮显示出来,没权限的按钮隐藏;
加载菜单页面时,查询出用户角色所拥有的页面按钮数据并展示到页面中;这一步是细分页面菜单下有哪些按钮菜单,只展示有权限的按钮。
S4、点击按钮时,不管是打开新的页面,还是往后端发送请求,对权限进行校验,校验通过放行,否则禁止访问并给出提示。
点击按钮,对按钮权限校验;这一步是对按钮级别的权限校验,点击按钮后,如果是打开新的页面,则校验是否拥有该页面的权限,对于没有权限的按钮,即使直接输入url也会给出没有权限的提示。如果是去请求后端接口,在后端检查该角色用户是否有用该权限,进而决定是否放行。
如图2所示,本实施例中的一种功能权限控制系统,包括权限配置模块、前端展示模块和权限校验模块,权限配置模块用于创建权限配置相关表并分配权限相关数据。
前端展示模块用于对页面菜单、按钮菜单进行展示和隐藏;
权限校验模块用于对url页面、后端接口进行权限校验,拦截没有权限的操作行为。
其中,权限配置模块包括对页面、按钮菜单的配置,对按钮-接口配置,对角色-菜单按钮配置,其中对页面、按钮菜单的配置是把系统中的页面菜单、页面中的按钮菜单梳理出来,存储到数据库中,对于页面菜单数据,要包含唯一ID、页面路径、菜单名称、父级菜单等信息;对于按钮菜单数据,要包含唯一ID、所属的页面菜单ID等信息。
对按钮-接口配置是配置按钮操作与后端接口的关联关系,一个按钮可以对应多个接口,一个接口也可以在多个按钮中出现,按钮与接口之间是多对多的关系。对角色-菜单按钮配置是用来为角色配置页面菜单、按钮菜单。
前端展示模块用来对页面菜单、按钮菜单进行展示和隐藏。对于页面菜单,当用户登陆后,首先查询出用户对应的角色下的页面菜单列表,前端根据菜单列表动态展示页面菜单;
对于按钮菜单,当用户点击具体页面菜单时,请求后端接口,根据页面菜单ID、用户角色查询出该用户所拥有的按钮列表,每个按钮菜单会有一个唯一ID,前端的按钮组件根据列表中是否存在其对应的按钮ID进行隐藏或者显示。
权限校验模块为了针对越过前端权限控制,直接通过postman等工具请求没有权限接口的情况。当用户访问后端接口时,后端拦截器拦住请求,根据请求里携带的用户信息查询出该用户时候拥有该接口的访问权限,如果有权限则直接放行,否则禁止访问并返回提示信息。
上述具体的实施方式仅是本发明具体的个案,本发明的专利保护范围包括但不限于上述具体的实施方式,任何符合本发明的一种功能权限控制方法及系统权利要求书的且任何所述技术领域普通技术人员对其做出的适当变化或者替换,皆应落入本发明的专利保护范围。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (9)
1.一种功能权限控制方法,其特征在于,具有如下步骤:
S1、创建权限配置相关表并分配权限相关数据;
S2、用户登录系统后,查询出用户角色所拥有的页面菜单并在浏览器上显示;
S3、点击某一个页面,查询该页面所拥有的按钮菜单数据,并把页面中有权限的按钮显示出来,没权限的按钮隐藏;
S4、点击按钮时,不管是打开新的页面,还是往后端发送请求,对权限进行校验,校验通过放行,否则禁止访问并给出提示。
2.根据权利要求1所述的一种功能权限控制方法,其特征在于,在步骤S1中,相关表包括页面表、按钮表、接口表以及用户表,所述页面表存储页面菜单数据,包括字段信息,存储角色与页面菜单之间关系的表;
所述按钮表存储按钮菜单数据,包括字段信息,存储角色与按钮菜单之间关系的表;
所述接口表存储按钮与后端接口之间关系的表;
所述用户表存储用户数据,包括角色字段。
3.根据权利要求2所述的一种功能权限控制方法,其特征在于,在步骤S2中,用户登录系统后,查询出用户角色所拥有的菜单列表并展示;其中菜单展示包括在浏览器上显示一级、二级等各级有权限的页面菜单,没有权限的各级菜单不会展示出来,并且即使直接输入url也会给出没有权限的提示。
4.根据权利要求3所述的一种功能权限控制方法,其特征在于,在步骤S3中,加载菜单页面时,查询出用户角色所拥有的页面按钮数据并展示到页面中;
这一步是细分页面菜单下的按钮菜单,只展示有权限的按钮。
5.根据权利要求4所述的一种功能权限控制方法,其特征在于,在步骤S4中,点击按钮,对按钮权限校验;这一步是对按钮级别的权限校验,点击按钮后,如果是打开新的页面,则校验是否拥有该页面的权限,对于没有权限的按钮,即使直接输入url也会给出没有权限的提示;
如果是去请求后端接口,在后端检查角色用户是否有用权限,进而决定是否放行。
6.一种功能权限控制系统,其特征在于,包括权限配置模块、前端展示模块和权限校验模块,所述权限配置模块用于创建权限配置相关表并分配权限相关数据;
所述前端展示模块用于对页面菜单、按钮菜单进行展示和隐藏;
所述权限校验模块用于对url页面、后端接口进行权限校验,拦截没有权限的操作行为。
7.根据权利要求4所述的一种功能权限控制系统,其特征在于,所述权限配置模块包括对页面、按钮菜单的配置和对按钮-接口配置,对角色-菜单按钮配置,其中对页面、按钮菜单的配置是把系统中的页面菜单、页面中的按钮菜单梳理出来,存储到数据库中;
对按钮-接口配置是配置按钮操作与后端接口的关联关系,一个按钮可以对应多个接口,一个接口也可以在多个按钮中出现,按钮与接口之间是多对多的关系;对角色-菜单按钮配置是用来为角色配置页面菜单、按钮菜单。
8.根据权利要求7所述的一种功能权限控制系统,其特征在于,所述前端展示模块对页面菜单、按钮菜单进行展示和隐藏;
对于页面菜单,当用户登陆后,首先查询出用户对应的角色下的页面菜单列表,前端根据菜单列表动态展示页面菜单;对于按钮菜单,当用户点击具体页面菜单时,请求后端接口,根据页面菜单ID、用户角色查询出用户所拥有的按钮列表,每个按钮菜单会有一个唯一ID,前端的按钮组件根据列表中是否存在对应的按钮ID进行隐藏或者显示。
9.根据权利要求8所述的一种功能权限控制系统,其特征在于,所述权限校验模块直接通过postman请求没有权限接口的情况;
当用户访问后端接口时,后端拦截器拦住请求,根据请求里携带的用户信息查询出用户时候拥有接口的访问权限,如果有权限则直接放行,否则禁止访问并返回提示信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211226864.6A CN115618408A (zh) | 2022-10-09 | 2022-10-09 | 一种功能权限控制方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211226864.6A CN115618408A (zh) | 2022-10-09 | 2022-10-09 | 一种功能权限控制方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115618408A true CN115618408A (zh) | 2023-01-17 |
Family
ID=84861473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211226864.6A Pending CN115618408A (zh) | 2022-10-09 | 2022-10-09 | 一种功能权限控制方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115618408A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115906187A (zh) * | 2023-02-22 | 2023-04-04 | 山东经伟晟睿数据技术有限公司 | 一种功能权限与接口权限结合的用户权限控制方法及系统 |
CN116628654A (zh) * | 2023-07-26 | 2023-08-22 | 之江实验室 | 前端页面权限控制方法、装置、设备及存储介质 |
CN117744066A (zh) * | 2024-02-20 | 2024-03-22 | 蒲惠智造科技股份有限公司 | 用于srm系统的权限控制方法、系统、介质及电子设备 |
-
2022
- 2022-10-09 CN CN202211226864.6A patent/CN115618408A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115906187A (zh) * | 2023-02-22 | 2023-04-04 | 山东经伟晟睿数据技术有限公司 | 一种功能权限与接口权限结合的用户权限控制方法及系统 |
CN116628654A (zh) * | 2023-07-26 | 2023-08-22 | 之江实验室 | 前端页面权限控制方法、装置、设备及存储介质 |
CN116628654B (zh) * | 2023-07-26 | 2023-11-07 | 之江实验室 | 前端页面权限控制方法、装置、设备及存储介质 |
CN117744066A (zh) * | 2024-02-20 | 2024-03-22 | 蒲惠智造科技股份有限公司 | 用于srm系统的权限控制方法、系统、介质及电子设备 |
CN117744066B (zh) * | 2024-02-20 | 2024-06-07 | 蒲惠智造科技股份有限公司 | 用于srm系统的权限控制方法、系统、介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115618408A (zh) | 一种功能权限控制方法及系统 | |
US10198466B2 (en) | Data store access permission system with interleaved application of deferred access control filters | |
US9396260B2 (en) | Managing multiple virtual world accounts from a single virtual lobby interface | |
CN105787317B (zh) | 基于多层分级系统的权限控制方法 | |
AU757061B2 (en) | System and method for selectively defining access to application features | |
US6028605A (en) | Multi-dimensional analysis of objects by manipulating discovered semantic properties | |
CN100492357C (zh) | 最优化行级别数据库安全的系统和方法 | |
CN109829286B (zh) | 一种web应用的用户权限管理系统及方法 | |
US8762881B2 (en) | Taking screenshots of a failed application | |
JPH07210442A (ja) | ディレクトリサービスのファイルシステムサービスとの統一 | |
CN112149109B (zh) | 模块化权限控制管理方法及系统 | |
AU2004241605A1 (en) | System and method for electronic document security | |
US9769159B2 (en) | Cookie optimization | |
CN108427550A (zh) | 一种Web服务生成方法、装置及设备 | |
CN111427491A (zh) | 一种系统后台菜单按钮的配置方法及装置 | |
US20070198522A1 (en) | Virtual roles | |
US20080126980A1 (en) | Central display floor plan for displaying a plurality of data objects | |
CN112131559A (zh) | 一种基于角色的权限管控方法、装置、设备及介质 | |
CN108292350A (zh) | 支持联合搜索的对受保护字段的自动操作检测 | |
US20090070743A1 (en) | System and method for analyzing software applications | |
US9037609B1 (en) | Method for determining access of queries | |
US7216117B2 (en) | System and method for address book customization for shared emessaging | |
US10176153B1 (en) | Generating custom markup content to deter robots | |
CN107220363B (zh) | 一种支持全局复杂检索的跨地域查询方法及系统 | |
US8819806B2 (en) | Integrated data access |
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 |