加强型的记录集权限(数据集权限、约束表达式设置功能)实现方法界面参考

简介:

1。功能要求相对复杂的信息管理系统,有比较严格的权限管理设置的需求。例如业务管理系统中的一个角色只能查看金额小于500万的合同,而且只能看自己所在部门的合同,系统要求限制条件能灵活设置过滤所能看到的,所能操作的数据项,当前把这些需求理解为数据集权限需求,类似下面的示例参考图。

吉日嘎拉、通用权限管理系统


2。首选我们需要提供一个设置记录集权限的功能,我们按角色权限设置为例,参考下图红色圈起来的部分:

吉日嘎拉、通用权限管理系统


3。下面是显示当前角色在哪些数据表上进行了数据集权限约束示例:

吉日嘎拉、通用权限管理系统


4。设置数据集权限约时可以列出当前表的字段(可进行一些有必要的筛选):

吉日嘎拉、通用权限管理系统


5。下面是显示默认的条件表达式:

吉日嘎拉、通用权限管理系统


  若想完美的做好约束条件的表达式还是不太容易,一方面需要正确解析约束条件表达式,另一方面还需要能灵活设置,其实比较完美的做好还是挺不容易的,而且还需要有验证约束条件表达式的功能比较好,还需要进行防注入优化才可以,一些标准参数的提醒等等等很多细节都完善了才能满足客户的实际需要,所以我总提倡真正能把某个功能彻底做好,其实非常不容易、需要高超的技术能力、也需要有高超的理解客户需求的能力、也需要能实现高难的技术问题、也需要能实现真正客户喜欢用的友善性、良好的交互性才能得到客户的认可。




本文转自 jirigala 51CTO博客,原文链接:http://blog.51cto.com/2347979/1199860,如需转载请自行联系原作者

相关文章
|
28天前
|
Windows
该文件没有与之关联的应用来执行该操作。请安装应用,若已经安装应用,请在“默认应用设置“页面中创建关联
【10月更文挑战第22天】当你遇到“该文件没有与之关联的应用来执行该操作”的提示时,通常是因为文件类型未关联应用或文件损坏。解决方法包括:1. 确定文件类型并安装合适的应用程序,如Microsoft Office、Adobe Acrobat Reader等;2. 如果已安装应用,进入系统设置关联文件类型;3. 检查文件完整性,重新下载或验证文件格式。
966 1
|
SQL 数据安全/隐私保护
通用数据级别权限的框架设计与实现(3)-数据列表的权限过滤
查看上篇文章通用数据级别权限的框架设计与实现(2)-数据权限的准备工作,我们开始数据列表的权限过滤. 原理:我们在做过滤列表时,根据用户权限自动注入到相关SQL中,实现相关过滤,如果拥有全部权限,则不生成相关SQL片段 首先我们来分析一下数据列表的SQL 能看到所有数据的SQL SELECT role.
1192 0
|
5月前
|
SQL 关系型数据库 MySQL
MySQL数据库——视图-介绍及基本语法(创建、查询、修改、删除、演示示例)
MySQL数据库——视图-介绍及基本语法(创建、查询、修改、删除、演示示例)
102 0
|
6月前
|
SQL 存储 定位技术
数据库基础(七):用户自定义数据类型与标量值、内嵌表值、多语句表值函数等用户定义函数的创建、使用、删除
数据库基础(七):用户自定义数据类型与标量值、内嵌表值、多语句表值函数等用户定义函数的创建、使用、删除
125 1
|
6月前
|
存储 关系型数据库 MySQL
认识MySQL数据库中用户自定义变量
认识MySQL数据库中用户自定义变量。
118 0
|
关系型数据库 MySQL 数据库连接
SQLAlchemy关联表删除策略设置
SQLAlchemy关联表删除策略设置
“关联表单”组件文本数据筛选只支持包含条件的解决方案
在“关联表单”中使用数据筛选功能筛选文本时条件只有”包含“,此文章通过增加一个”下拉单选“组件,变相解决这个问题。
199 0
流程定义查询和删除
流程定义查询流程定义查询和删除
【自然框架】之通用权限(八):权限到字段(列表、表单、查询)
 通用权限想要写的文章目录:(这是第八章)   1、 简介、数据库的总体结构2、 介绍人员表组3、 介绍组织结构表组4、 介绍角色表组5、 介绍“项目自我描述表组”6、 权限到节点7、 权限到按钮8、 权限到列表(表单、查询)9、 权限的验证10、 资源方面的权限11、 角色管理的程序(给客户用的)12、 权限下放13、 个性化设置A、 【自然框架】之通用权限(外传):杂谈     列表 myGrid 先说一下myGrid,我会根据Manage_FunListCol表和Manage_Columns表的内容,绘制出来一个table,就是的HTML。
913 0
|
测试技术
软件测试面试题:lr中,哪个函数是用来截取虚拟用户脚本中的动态值?(手工关联)
软件测试面试题:lr中,哪个函数是用来截取虚拟用户脚本中的动态值?(手工关联)
107 0