SNF快速开发平台2019-权限管理模型-记录级-字段级权限实践
1.1.1 字段级权限
字段级权限适用于对不同人的能否查看或录入不同表不同字段的权限控制。
是否启用字段级权限配置
不启用字段级权限后,【用户权限管理】程序【字段级权限】按钮会隐藏,导致无法给管理其他用户的字段级权限。
如果启用字段级权限如下:系统配置里进行配置,勾选启用字段级权限即可。

图 3.3‑1 启用字段级权限配置
启用字段级权限使用方法
操作路径:【后台管理】->【用户权限管理】
第一步: 给用户初六配置字段权限

图 3.3‑2 给初六配置字段权限
第二步:在需要开启权限的页面构造函数中添加如下代码即可
|
this.SetGridColumnsPermission(this.grvGridView.Columns,DemoSingleTableEntity.TableName); |
第一个参数为GridView的所有列
第二个参数为当前数据表的名

图 3.3‑3 代码调用
第三步:登录用户初六查看效果。

图 3.3‑4 查看效果
1.1.2 记录级权限
记录级权限适用于对不同人的配置不同的数据过滤。
是否启用记录级权限配置
不启用记录级权限后,【用户权限管理】程序【记录级权限】按钮会隐藏,导致无法给管理其他用户的记录级权限。
如果启用记录级权限如下:系统配置里进行配置,勾选启用记录级权限即可。

图 3.3‑5 启用记录级权限
启用记录级权限使用方法
操作路径:【后台管理】->【用户权限管理】
第一步:给用户初六配置记录级权限。这里有两种方式,可以直接写SQL语句和下拉选择配置。

图 3.3‑6 SQL配置记录级权限方法

图 3.3‑7配置记录级权限方法
第二步:在程序查询方法中添加如下代码。
|
BaseTableColumnsManager columnsManager = new BaseTableColumnsManager(ucDbHelper, userInfo); string userConstraint = columnsManager.GetUserConstraint(DemoSingleTableEntity.TableName); //参数是数据表的名称 if (!string.IsNullOrEmpty(userConstraint)) { if (!string.IsNullOrEmpty(wheres)) { wheres += " and "; } wheres += userConstraint; } |

图 3.3‑8 代码调用
第三步:登录用户初六查看效果。

图 3.3‑9 效果
其它权限实践系列文章:
1、角色、权限、账户的概念理解-非常全的理论讲解权限控制 https://www.cnblogs.com/spring_wang/p/10954370.html
2、权限管理模型简介-权限都在这里 https://www.cnblogs.com/spring_wang/p/10983935.html
3、权限管理模型实践-权限都在这里 https://www.cnblogs.com/spring_wang/p/10983969.html
4、权限管理模型-平台服务(多平台\多组织\SAAS\多系统) https://www.cnblogs.com/spring_wang/p/10983991.html
5、权限管理模型-记录级-字段级权限实践 https://www.cnblogs.com/spring_wang/p/10983999.html
6、用户安全控制-权限管理模型实践-权限都在这里 https://www.cnblogs.com/spring_wang/p/10983983.html
7、SNF快速开发平台成长史V4.5-Spring.Net.Framework-SNF软件开发机器人 https://www.cnblogs.com/spring_wang/p/6742014.html
8、Spring.Net.FrameworkV3.0 版本发布了,感谢大家的支持 https://www.cnblogs.com/spring_wang/p/4203293.html
SNF快速开发平台2019-权限管理模型-记录级-字段级权限实践的更多相关文章
- SNF快速开发平台2019-权限管理模型实践-权限都在这里
其它权限实践系列文章: 1.角色.权限.账户的概念理解-非常全的理论讲解权限控制 https://www.cnblogs.com/spring_wang/p/10954370.html 2.权限管理模 ...
- SNF快速开发平台2019-权限管理模型简介-权限都在这里
1.1 权限的概念 权限是指为了保证职责的有效履行,任职者必须具备的,对某事项进行决策的范围和程度.它常常用“具有批准……事项的权限”来进行表达.例如,具有批准预算外5000元以内的礼品费支出的 ...
- SNF快速开发平台2019-权限管理模型-平台服务(多平台\多组织\SAAS\多系统)
1.1 不同组织机构 通俗的讲,就是一个集团公司,划分几个区域,每个区域都有什么分公司,每个分公司都有哪些部门一样,哪些部门又有那些子部门等. 当然也可以是外贸公司的全球性客户.合作伙伴的分布情 ...
- SNF快速开发平台MVC-名片管理(实际名片样式)
名片管理实际的做的意义在于演示应用,在这里使用的技术有排序控件,查询条件.自由样式瀑布流式分页等技术. 下面是自由样式效果图: 下面表格样式效果图: 具体操作: 新增名片 在新增时可以上传图像进行裁剪 ...
- SNF快速开发平台MVC-自由排序组件
1. 自由排序功能使用 在一些需要排序优先级的数据进行调整处理,如民族数据,在北方实施的时候汉族比较多,希望把汉族放在第一位.在蒙古实施项目时,蒙古族人最多把蒙古族放在第一选择位. 1.1. ...
- SNF快速开发平台MVC-集成了百度开源项目echars
百度开源项目echars图表样式非常丰富,而且开源免费.非常好.所以在我们框架当中也进行了集成echars完成图表任务. 我们进行了两次封装,利于我们开发使用.我也看到过有些架构师 按echars里的 ...
- SNF快速开发平台--多组织+多平台+多系统处理方案
多组织架构的集团要看组织的组成形式: 1.如果每个组织都是独立法人,这个相对来说简单一些,组织之间的关联交易跟集团外部客户交易没什么本质区别, 各个公司都是独立核算,正常的应收应付都需要开发票,各自出 ...
- SNF快速开发平台MVC-EasyUI3.9之-Session过期处理和页面请求筛选
Session引发的异常 其中一个bug是这样的: 使用Firefox登录进入系统后,再打开一个Tab,进入系统页面,点击logout. 在回到前一个tab页面,点击Save按钮,出现了js错误.这个 ...
- SNF快速开发平台MVC-EasyUI3.9之-WebApi身份验证问题解决方案
在我们的整体bs框架当中前端采用的是MVC+WebApi的处理方式.WebApi使用起来确实很方便但也会有新的麻烦事,就是身份验证. 如果没有启用身份认证,那么任何匿名用户只要知道了我们服务的url, ...
随机推荐
- 【转】学习ARM为什么首选IMAX6??
ARM作为目前嵌入式行业主流的架构,已经让越来越多从事电子行业的朋友了解,并且高校对于嵌入式的学习,很多直接从ARM开始,目前ARM的嵌入式培训也越来越多,足以说明现在嵌入式行业有多火.目前主流的AR ...
- kuangbin专题专题四 MPI Maelstrom POJ - 1502
题目链接:https://vjudge.net/problem/POJ-1502 dijkstra板子题,题目提供下三角情况,不包含正对角线,因为有题意都为0,处理好输入,就是一个很水的题. #inc ...
- async和await执行顺序
关于执行顺序和线程ID,写了一个小程序来检测学习: using System; using System.Net; using System.Threading; using System.Threa ...
- php中的Exception
如果定制的EXCEPTION搞定了,默认的,就自然不在话下罗. 直接上最曲折的过程. InvalidIdException.php <?php namespace Bookstore\Excep ...
- Windows下安装Zabbix agent
下载Windows版本的Zabbix agent安装包:https://www.zabbix.com/cn/download_agents#tab:40LTS 有两种安装方式: (1)需要手动安装,安 ...
- Linux系统下jar包的启动方式
Linux 运行jar包命令如下: 方式一: Java -jar shareniu.jar 特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出 那如何让窗口不锁定? ...
- WebLogic任意文件上传漏洞(CVE-2019-2618)
WebLogic任意文件上传漏洞(CVE-2019-2618) 0x01 漏洞描述 漏洞介绍 CVE-2019-2618漏洞主要是利用了WebLogic组件中的DeploymentService接口, ...
- Linux中的CentOS 7克隆之后修改
1.VMware Workstation软件查看克隆完成后的虚拟机网卡mac地址,记录下来 2.输入[cd /etc/sysconfig/network-scripts/]命令后,再执行[ip add ...
- react native redux 草稿
Provider > Provider > 使组件层级中的 方法都能够获得 Redux store.正常情况下,你的根组件应该嵌套在 Provider 中才能使用 方法. 如果你真的不想把 ...
- HTTP Status 500 - javax.servlet.ServletException: java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/LoopTag
我在项目中导入了jar,还是不能使用EL表达式,一运行就出现了下面的额错误: org.apache.jasper.JasperException: javax.servlet.ServletExcep ...