System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种设置数据权限方法、客户端、服务器、存储介质及程序产品技术_技高网

一种设置数据权限方法、客户端、服务器、存储介质及程序产品技术

技术编号:44330306 阅读:2 留言:0更新日期:2025-02-18 20:38
本发明专利技术实施例提供了一种设置数据权限方法、客户端、服务器、存储介质及程序产品,包括:拦截HTTP请求;对HTTP请求进行解析,以获取与数据权限相关的配置数据;如果获取到与数据权限相关的配置数据,则根据与数据权限相关的配置数据,生成SQL语句;将SQL语句保存在HTTP请求的第二参数中;判断HTTP请求中的的第二参数是否存在,如果存在,则获取HTTP请求的第二参数中的SQL语句;将第二参数中的SQL语句,拼接到查询SQL中;执行查询SQL;返回结果数据。本发明专利技术通过对用户请求进行解析,分析参数,生成请求的数据过滤SQL,然后再执行数据过滤,增加了信息系统对权限控制的灵活性,和后期维护的简便性。

【技术实现步骤摘要】

本专利技术涉及数据处理,具体地涉及一种设置数据权限方法、客户端、服务器、存储介质及程序产品


技术介绍

1、目前,采用的b/s架构的信息系统的运行方式是通过浏览器客户端发起一个http请求,服务端在接受http请求后,执行http请求对应的业务,并将执行后得到的结果数据返回到浏览器客户端,在此过程中,为了确保客户端上看到数据是合法和安全的,需要通过设置数据权限来限制未经授权的用户访问数据,这种方法可以有效防止非法访问和数据泄露的风险,同时只有获得相应权限的用户才能访问数据,从而保障了数据的安全性。

2、目前设置数据权限的方式有以下几种:

3、方案一、在信息系统的查询需要权限的数据sql中,通过设置where条件来限制数据的访问,此方法虽然简单,但是数据权限访问和业务并没有实现解耦,在需要设置权限的业务的数据类型比较多的情况下,开发的工作量和后期维护的难度会增加。

4、方案二、获取数据并分析数据的权限分类,并为每个分类创建数据访问视图,同时设置用户和视图的关系,当用户发起数据的访问请求后,首先从用户和视图的关系表中,找到对应的视图,调用视图返回数据,此方法虽然简单,但是不具有灵活性,如果数据权限分类发生变化,就需要重新创建视图,增加了维护的复杂性。

5、方案一的主要缺点在于缺乏灵活的配置,数据权限的控制放在sql代码中,如果数据权限发生变化就需要重新开发,另外数据权限的控制和业务没有实现解耦,后期有相同权限的其他业务数据,就需要重复开发相似代码。

6、方案二的主要缺点在于对应新增或修改数据的访问策略就需要重建视图,另外视图相对于sql本身比较复杂,对于复杂的数据权限的支持,不能通过简单的数据权限之间的逻辑组合进行实现。


技术实现思路

1、本专利技术实施例的目的是提供一种设置数据权限方法、客户端、服务器、存储介质及程序产品以解决数据权限的开发工作量大和维护复杂的问题。

2、为了实现上述目的,本专利技术实施例提供一种设置数据权限的方法,其特征在于,包括:

3、发送http请求,其中,在http请求的第一参数中包括用户标识;

4、接收返回的结果数据。

5、另一方面,本专利技术提供了一种设置数据权限方法,包括:拦截http请求;对http请求进行解析,以获取与数据权限相关的配置数据;如果获取到与数据权限相关的配置数据,则根据与数据权限相关的配置数据,生成sql语句;将sql语句保存在http请求的第二参数中;判断http请求中的的第二参数是否存在,如果存在,则获取http请求的第二参数中的sql语句;将第二参数中的sql语句,拼接到查询sql中;执行查询sql;返回结果数据。

6、可选的,在根据权如上所述的一种设置数据权限方法,还包括:如果未获取与数据权限相关的配置数据,则判断http请求中的第二参数是否存在,如果否,则执行查询sql;返回结果数据。

7、可选的,在根据如上所述的一种设置数据权限方法,根据与数据权限相关的配置数据,生成sql语句,包括:判断配置数据中是否存在动态sql语句,如果存在,则将动态sql语句保存在http请求的第二参数中;如果不存在,则通过预设的数据权限类型模版生成sql语句,保存在http请求的第二参数中。

8、可选的,在根据如上所述的一种设置数据权限方法,所述对http请求进行解析,包括:通过http请求中第一参数获取用户的标识;获取http请求中的类名和方法名;通过类名和方法名以及用户标识查询数据权限配置表,获取与数据权限相关的配置数据。

9、另一方面,本专利技术提供了一种客户端,包括存储器、处理器及存储在所述存储器上的计算机程序,所述处理器执行所述计算机程序以实现如上所述的一种设置数据权限方法的步骤。

10、另一方面,本专利技术提供了一种服务器,包括存储器、处理器及存储在所述存储器上的计算机程序,所述处理器执行所述计算机程序以实现如上任意一项所述的一种设置数据权限方法的步骤。

11、另一方面,本专利技术提供了一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得机器执行时实现如上所述的设置数据权限方法的步骤。

12、另一方面,本专利技术提供了一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得机器执行时实现如上任意一项所述的一种设置数据权限方法的步骤。

13、另一方面,本专利技术提供了一种计算机程序产品,包括计算机程序,其中,所述程序被运行时用于执行:如上所述的一种设置数据权限方法的步骤。

14、另一方面,本专利技术提供了一种计算机程序产品,包括计算机程序,其中,所述程序被运行时用于执行:如上任意一项所述的设置数据权限方法的步骤。

15、上述技术方案,通过对用户请求进行解析,分析参数,动态生成请求的数据过滤sql,然后再执行数据过滤,增加了信息系统对权限控制的灵活性,和后期维护的简便性。

16、本专利技术实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。

本文档来自技高网...

【技术保护点】

1.一种设置数据权限的方法,其特征在于,包括:

2.一种设置数据权限方法,其特征在于,包括:

3.根据权利要求2所述的一种设置数据权限方法,其特征在于,还包括:

4.根据权利要求3所述的一种设置数据权限方法,其特征在于,根据与数据权限相关的配置数据,生成SQL语句,包括:

5.根据权利要求2所述的一种设置数据权限方法,其特征在于,所述对HTTP请求进行解析,包括:

6.一种客户端,包括存储器、处理器及存储在所述存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1所述的一种设置数据权限方法的步骤。

7.一种服务器,包括存储器、处理器及存储在所述存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求2-5任意一项所述的一种设置数据权限方法的步骤。

8.一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得机器执行时实现权利要求1所述的设置数据权限方法的步骤。

9.一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得机器执行时实现权利要求2-5任意一项所述的一种设置数据权限方法的步骤。

10.一种计算机程序产品,其特征在于,包括计算机程序,其中,所述程序被运行时用于执行:如权利要求1所述的一种设置数据权限方法的步骤。

11.一种计算机程序产品,其特征在于,包括计算机程序,其中,所述程序被运行时用于执行:如权利要求2-5任意一项所述的设置数据权限方法的步骤。

...

【技术特征摘要】

1.一种设置数据权限的方法,其特征在于,包括:

2.一种设置数据权限方法,其特征在于,包括:

3.根据权利要求2所述的一种设置数据权限方法,其特征在于,还包括:

4.根据权利要求3所述的一种设置数据权限方法,其特征在于,根据与数据权限相关的配置数据,生成sql语句,包括:

5.根据权利要求2所述的一种设置数据权限方法,其特征在于,所述对http请求进行解析,包括:

6.一种客户端,包括存储器、处理器及存储在所述存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1所述的一种设置数据权限方法的步骤。

7.一种服务器,包括存储器、处理器及存储在所述存储器上的计算机程序,其特征在于,所述...

【专利技术属性】
技术研发人员:谷强张凯
申请(专利权)人:大唐软件技术股份有限公司
类型:发明
国别省市:

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

1