CN116028097A - 数据权限的处理方法、系统、设备及存储介质 - Google Patents
数据权限的处理方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN116028097A CN116028097A CN202310031134.9A CN202310031134A CN116028097A CN 116028097 A CN116028097 A CN 116028097A CN 202310031134 A CN202310031134 A CN 202310031134A CN 116028097 A CN116028097 A CN 116028097A
- Authority
- CN
- China
- Prior art keywords
- data
- authority
- verification
- parameter information
- template
- 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
Landscapes
- Storage Device Security (AREA)
Abstract
本申请涉及数据权限的处理方法、系统、设备及存储介质。包括:接收前台页面传输的请求信息,所述请求信息携带数据校验相关的参数信息;通过SpringAop拦截对应的所述数据校验相关的参数信息,得到与所述参数信息对应的业务权限数据处理模板;利用所述业务权限数据处理模板,进行数据权限校验,若通过数据权限校验,则执行与所述业务权限数据处理模板对应的业务代码,并将执行的结果返回客户端;否则,提示校验异常,将所述异常信息返回给客户端。本申请帮助解决数据权限代码与业务权限代码耦合性高的问题,提升相关代码的可读性和可维护性。
Description
技术领域
本申请涉及权限控制及计算机软件技术领域,尤其涉及数据权限的处理方法、系统、设备及存储介质。
背景技术
在企业级的应用中为了数据安全性考虑,都需要进行权限控制,权限控制分为功能权限和数据权限,功能权限就是指的是菜单、按钮级别的权限的控制,数据权限是用户的数据读写权限,可以查看哪些数据,可以处理哪些数据的权限。
现在市面上很多开源的框架,比如Spring Security、Apache Shiro等都只能解决功能级别的权限问题,对于数据权限相关的内容,由于与业务相关联程度很大,每家企业都有自己不同的需求,导致市面并没有一款产品来解决数据权限问题,目前很多开发人员都是与业务代码混合在一起控制数据权限,据权限代码与业务权限代码耦合性高,这样导致相关的代码可读性很差,也没有统一数据权限处理方式,最终导致代码可维护性太差。
即现有技术中,数据权限代码与业务权限代码耦合性高,导致相关的代码可读性很差,代码可维护性太差。
发明内容
为至少在一定程度上克服相关技术中数据权限代码与业务权限代码耦合性高,导致相关的代码可读性很差,代码可维护性太差的问题,本申请提供涉及数据权限的处理方法、系统、设备及存储介质。
本申请的方案如下:
第一方面,本申请提供数据权限的处理方法,所述方法包括:
接收前台页面传输的请求信息,所述请求信息携带数据校验相关的参数信息;
通过SpringAop拦截对应的所述数据校验相关的参数信息,得到与所述参数信息对应的业务权限数据处理模板;
利用所述业务权限数据处理模板,进行数据权限校验,若通过数据权限校验,则执行与所述业务权限数据处理模板对应的业务代码,并将执行的结果返回客户端;
否则,提示校验异常,将所述异常信息返回给客户端。
进一步地,所述通过SpringAop拦截对应的所述数据校验相关的参数信息,得到与所述参数信息对应的业务权限数据处理模板,包括:
利用所述SpringAop拦截对应的所述数据校验相关的参数信息,匹配与所述数据校验相关的参数信息对应的注解信息;
其中,所述注解信息中包含对应的所述业务权限数据处理模板的名称信息;
利用所述注解信息,得到与所述参数信息对应的业务权限数据处理模板。
进一步地,所述方法还包括:
通过继承数据权限校验的模板实现对应所述业务数据处理的模板;
其中,所述数据权限校验的模板为基于后台设定的数据权限校验规则的合集。
第二方面,本申请提供数据权限的处理系统,所述系统包括:
获取模块,用于接收前台页面传输的请求信息,所述请求信息携带数据校验相关的参数信息;
模板匹配模块,用于通过SpringAop拦截对应的所述数据校验相关的参数信息,得到与所述参数信息对应的业务权限数据处理模板;
校验模块,用于利用所述业务权限数据处理模板,进行数据权限校验,若通过数据权限校验,则执行与所述业务权限数据处理模板对应的业务代码,并将执行的结果返回客户端;
否则,提示校验异常,将所述异常信息返回给客户端。
第三方面,本申请提供数据权限的处理设备,所述设备包括:
存储器,其上存储有可执行程序;
处理器,用于执行所述存储器中的所述可执行程序,以实现上述中任一项所述方法的步骤。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使计算机执行上述中任一项所述方法的步骤。
本申请提供的技术方案可以包括以下有益效果:
本申请通过接收前台页面传输的请求信息,所述请求信息携带数据校验相关的参数信息;通过SpringAop拦截对应的所述数据校验相关的参数信息,得到与所述参数信息对应的业务权限数据处理模板;利用所述业务权限数据处理模板,进行数据权限校验,若通过数据权限校验,则执行与所述业务权限数据处理模板对应的业务代码,并将执行的结果返回客户端;否则,提示校验异常,将所述异常信息返回给客户端。本申请通过SpringAop设置参数拦截及业务权限数据处理模板进行数据权限校验,帮助解决数据权限代码与业务权限代码耦合性高,导致相关的代码可读性很差,代码可维护性太差的问题,提升相关代码的可读性和可维护性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是本申请一个实施例提供的数据权限处理的方法流程示意图;
图2是本申请一个实施例提供的Spring Aop及数据权限模板正向交互数据权限处理的方法流程图;
图3本申请一个实施例提供的Spring Aop及数据权限模板权限交互数据权限处理抛出异常的方法流程图;
图4是本申请另一个实施例提供的数据权限处理的系统组成示意图;
图5是本申请又一个实施例提供的数据权限处理的设备组成示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
实施例一
请参阅图1,图1是本申请一个实施例提供的数据权限处理的方法流程示意图,所述方法包括:
S1.接收前台页面传输的请求信息,所述请求信息携带数据校验相关的参数信息;
S2.通过SpringAop拦截对应的所述数据校验相关的参数信息,得到与所述参数信息对应的业务权限数据处理模板;
S3.利用所述业务权限数据处理模板,进行数据权限校验;
S4.若通过数据权限校验,则执行与所述业务权限数据处理模板对应的业务代码,并将执行的结果返回客户端;
S5.否则,提示校验异常,将所述异常信息返回给客户端。
在一个实施例中,Spring是一个轻量级的Java开发框架,目的是用于简化企业级应用程序开发,全世界的开发人员都在使用Spring框架开发各种应用,Spring包含多个模块,其中比较重要的是IOC和Aop。Spring Security解决了应用菜单、按钮级别的功能权限问题。对于数据权限相关的内容Spring并没有提供相关的解决方案。本申请在Spring Aop和Java注解的基础上,结合模板设计的模式,最终设计一套通用化标准的数据权限处理方案,帮助大家解决业务代码与数据权限代码隔离,提升代码可读性和可维护性。
在一个实施例中,如步骤S2所述,所述通过SpringAop拦截对应的所述数据校验相关的参数信息,得到与所述参数信息对应的业务权限数据处理模板,包括:
利用所述SpringAop拦截对应的所述数据校验相关的参数信息,匹配与所述数据校验相关的参数信息对应的注解信息;
其中,所述注解信息中包含对应的所述业务权限数据处理模板的名称信息;
利用所述注解信息,得到与所述参数信息对应的业务权限数据处理模板。
在一个实施例中,通过继承数据权限校验的模板实现对应所述业务数据处理的模板;其中,所述数据权限校验的模板为基于后台设定的数据权限校验规则的合集,所述校验规则的合集包括但不限于正则校验、CRC校验、LRC校验、格雷码校验、和校验、异或校验、md5校验和数字签名校验。
在具体实施时,通过继承标准的数据权限校验的模板类实现对应业务数据权限的模板;在对应的业务处理的方法增加注解信息,注解信息包含对应的业务数据处理模板的名称;通过Spring Aop拦截请求对应的参数;通过拦截的参数定义的注解信息找到对应的数据处理模板;执行对应的数数据模板的方法,如果检验通过继续执行对应的业务代码,否则抛出异常提示权限检验失败;业务代码执行完成,再次拦截对应的结果处理模板的参数的注解;检查返回的结果,当前用户是否具备访问权限,如果符合展示数据,否则则提示无权限,从入参到出参形成闭环,保证数据安全性。
具体的,用户在前台界面发起请求,如图2、图3所示,通过SpringAop拦截所述请求中的对应参数,通过拦截的参数定义的注解信息找到对应的处理模板,基于对应的数据处理模板,执行前置参数拦截的数据模板中的方法进行数据校验,如果检验通过继续执行对应的业务代码,否则抛出异常提示权限检验失败;业务代码执行完成,再次拦截对应的结果处理模板的参数的注解;检查返回的结果,当前用户是否具备访问权限,如果符合展示数据,否则则提示无权限,从入参到出参形成闭环,保证数据安全性。
在本申请实施例中,通过模板设计模式提供统一的业务数据处理模板,形成数据权限检验的标准方案。通过Spring Aop对前置参数注解和后置参数注解进行拦截,找到对应的数据模板,检验数据安全性,形成对数据安全的闭环保障。
在本申请实施例中,通过接收前台页面传输的请求信息,所述请求信息携带数据校验相关的参数信息;通过SpringAop拦截对应的所述数据校验相关的参数信息,得到与所述参数信息对应的业务权限数据处理模板;利用所述业务权限数据处理模板,进行数据权限校验,若通过数据权限校验,则执行与所述业务权限数据处理模板对应的业务代码,并将执行的结果返回客户端;否则,提示校验异常,将所述异常信息返回给客户端。本申请通过SpringAop设置参数拦截及业务权限数据处理模板进行数据权限校验,帮助解决数据权限代码与业务权限代码耦合性高,导致相关的代码可读性很差,代码可维护性太差的问题,提升相关代码的可读性和可维护性。
实施例二
请参阅图4,图4是本申请另一个实施例提供的数据权限处理的系统组成示意图,所述系统包括:
获取模块101,用于接收前台页面传输的请求信息,所述请求信息携带数据校验相关的参数信息;
模板匹配模块102,用于通过SpringAop拦截对应的所述数据校验相关的参数信息,得到与所述参数信息对应的业务权限数据处理模板;
校验模块103,用于利用所述业务权限数据处理模板,进行数据权限校验,若通过数据权限校验,则执行与所述业务权限数据处理模板对应的业务代码,并将执行的结果返回客户端;
否则,提示校验异常,将所述异常信息返回给客户端。
实施例三
请参阅图5,图5是本申请又一个实施例提供的数据权限处理的设备组成示意图,所述设备包括:
存储器31,其上存储有可执行程序;
处理器32,用于执行所述存储器31中的所述可执行程序,以实现上述中任一项所述方法的步骤。
此外,本申请提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使计算机执行上述任一项所述方法的步骤。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)、随机存储记忆体(RandomAccess Memory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;所述存储介质还可以包括上述种类的存储器的组合。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本申请的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是指至少两个。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (6)
1.数据权限的处理方法,其特征在于,所述方法包括:
接收前台页面传输的请求信息,所述请求信息携带数据校验相关的参数信息;
通过SpringAop拦截对应的所述数据校验相关的参数信息,得到与所述参数信息对应的业务权限数据处理模板;
利用所述业务权限数据处理模板,进行数据权限校验,若通过数据权限校验,则执行与所述业务权限数据处理模板对应的业务代码,并将执行的结果返回客户端;
否则,提示校验异常,将所述异常信息返回给客户端。
2.根据权利要求1所述的方法,其特征在于,所述通过SpringAop拦截对应的所述数据校验相关的参数信息,得到与所述参数信息对应的业务权限数据处理模板,包括:
利用所述SpringAop拦截对应的所述数据校验相关的参数信息,匹配与所述数据校验相关的参数信息对应的注解信息;
其中,所述注解信息中包含对应的所述业务权限数据处理模板的名称信息;
利用所述注解信息,得到与所述参数信息对应的业务权限数据处理模板。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过继承数据权限校验的模板实现对应所述业务数据处理的模板;
其中,所述数据权限校验的模板为基于后台设定的数据权限校验规则的合集。
4.数据权限的处理系统,其特征在于,所述系统包括:
获取模块,用于接收前台页面传输的请求信息,所述请求信息携带数据校验相关的参数信息;
模板匹配模块,用于通过SpringAop拦截对应的所述数据校验相关的参数信息,得到与所述参数信息对应的业务权限数据处理模板;
校验模块,用于利用所述业务权限数据处理模板,进行数据权限校验,若通过数据权限校验,则执行与所述业务权限数据处理模板对应的业务代码,并将执行的结果返回客户端;
否则,提示校验异常,将所述异常信息返回给客户端。
5.数据权限的处理设备,其特征在于,所述设备包括:
存储器,其上存储有可执行程序;
处理器,用于执行所述存储器中的所述可执行程序,以实现权利要求1-3中任一项所述方法的步骤。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使计算机执行权利要求1-3任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310031134.9A CN116028097A (zh) | 2023-01-10 | 2023-01-10 | 数据权限的处理方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310031134.9A CN116028097A (zh) | 2023-01-10 | 2023-01-10 | 数据权限的处理方法、系统、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116028097A true CN116028097A (zh) | 2023-04-28 |
Family
ID=86080872
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310031134.9A Pending CN116028097A (zh) | 2023-01-10 | 2023-01-10 | 数据权限的处理方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116028097A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117786666A (zh) * | 2024-02-26 | 2024-03-29 | 九音科技(南京)有限公司 | 功能代码的启动校验方法、装置、电子设备及存储介质 |
-
2023
- 2023-01-10 CN CN202310031134.9A patent/CN116028097A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117786666A (zh) * | 2024-02-26 | 2024-03-29 | 九音科技(南京)有限公司 | 功能代码的启动校验方法、装置、电子设备及存储介质 |
CN117786666B (zh) * | 2024-02-26 | 2024-05-31 | 九音科技(南京)有限公司 | 功能代码的启动校验方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109002297B (zh) | 共识机制的部署方法、装置、设备和存储介质 | |
US8832455B1 (en) | Verified boot path retry | |
KR101691117B1 (ko) | 웹 애플리케이션을 위한 보안 데이터 컨테이너 | |
CN101960446B (zh) | 基于安全浏览器的应用 | |
US20180217921A1 (en) | System and method for generating and executing automated test cases | |
US9934310B2 (en) | Determining repeat website users via browser uniqueness tracking | |
Xu et al. | How do system administrators resolve access-denied issues in the real world? | |
CN103440198B (zh) | 表单校验方法 | |
CN108319575B (zh) | 一种页面组件的校验方法、装置、服务器和存储介质 | |
US10423517B2 (en) | Assertions in a business rule management system | |
Souza et al. | Structural testing for message‐passing concurrent programs: an extended test model | |
Smyth | Firebase essentials-Android edition | |
US20170371631A1 (en) | Globalization template manager for automated globalization enablement on development operations | |
De Jonge | Essential app engine: building high-performance java apps with google app engine | |
Scoccia et al. | Enhancing trustability of android applications via user-centric flexible permissions | |
CN116028097A (zh) | 数据权限的处理方法、系统、设备及存储介质 | |
Xu et al. | Guider: Gui structure and vision co-guided test script repair for android apps | |
CN110688111A (zh) | 业务流程的配置方法、装置、服务器和存储介质 | |
CN111782207A (zh) | 任务流代码生成方法、装置、设备及存储介质 | |
US11748238B2 (en) | Model-based biased random system test through rest API | |
US20110225568A1 (en) | Providing Software Validation as a Service | |
US20210385297A1 (en) | Systems and methods for regulating service behavior | |
CN117290138A (zh) | 故障处理方法、装置、系统、终端设备及存储介质 | |
US11288114B2 (en) | Remote diagnostic of computing devices | |
CN111597269A (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 |