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-权限管理模型-记录级-字段级权限实践的更多相关文章

  1. SNF快速开发平台2019-权限管理模型实践-权限都在这里

    其它权限实践系列文章: 1.角色.权限.账户的概念理解-非常全的理论讲解权限控制 https://www.cnblogs.com/spring_wang/p/10954370.html 2.权限管理模 ...

  2. SNF快速开发平台2019-权限管理模型简介-权限都在这里

    1.1    权限的概念 权限是指为了保证职责的有效履行,任职者必须具备的,对某事项进行决策的范围和程度.它常常用“具有批准……事项的权限”来进行表达.例如,具有批准预算外5000元以内的礼品费支出的 ...

  3. SNF快速开发平台2019-权限管理模型-平台服务(多平台\多组织\SAAS\多系统)

    1.1    不同组织机构 通俗的讲,就是一个集团公司,划分几个区域,每个区域都有什么分公司,每个分公司都有哪些部门一样,哪些部门又有那些子部门等. 当然也可以是外贸公司的全球性客户.合作伙伴的分布情 ...

  4. SNF快速开发平台MVC-名片管理(实际名片样式)

    名片管理实际的做的意义在于演示应用,在这里使用的技术有排序控件,查询条件.自由样式瀑布流式分页等技术. 下面是自由样式效果图: 下面表格样式效果图: 具体操作: 新增名片 在新增时可以上传图像进行裁剪 ...

  5. SNF快速开发平台MVC-自由排序组件

    1.    自由排序功能使用 在一些需要排序优先级的数据进行调整处理,如民族数据,在北方实施的时候汉族比较多,希望把汉族放在第一位.在蒙古实施项目时,蒙古族人最多把蒙古族放在第一选择位. 1.1.   ...

  6. SNF快速开发平台MVC-集成了百度开源项目echars

    百度开源项目echars图表样式非常丰富,而且开源免费.非常好.所以在我们框架当中也进行了集成echars完成图表任务. 我们进行了两次封装,利于我们开发使用.我也看到过有些架构师 按echars里的 ...

  7. SNF快速开发平台--多组织+多平台+多系统处理方案

    多组织架构的集团要看组织的组成形式: 1.如果每个组织都是独立法人,这个相对来说简单一些,组织之间的关联交易跟集团外部客户交易没什么本质区别, 各个公司都是独立核算,正常的应收应付都需要开发票,各自出 ...

  8. SNF快速开发平台MVC-EasyUI3.9之-Session过期处理和页面请求筛选

    Session引发的异常 其中一个bug是这样的: 使用Firefox登录进入系统后,再打开一个Tab,进入系统页面,点击logout. 在回到前一个tab页面,点击Save按钮,出现了js错误.这个 ...

  9. SNF快速开发平台MVC-EasyUI3.9之-WebApi身份验证问题解决方案

    在我们的整体bs框架当中前端采用的是MVC+WebApi的处理方式.WebApi使用起来确实很方便但也会有新的麻烦事,就是身份验证. 如果没有启用身份认证,那么任何匿名用户只要知道了我们服务的url, ...

随机推荐

  1. H3C STA>PC的数据转发

  2. Odoo MRP模块

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10825963.html 一:MRP MRP:产品制造管理. 产品制造业务设计到以下几个关键概念: 1)BOM ...

  3. phpstorm webstorm编辑器正则替换 类名,方法名替换

    首先勾选Match Case 和 Regex 正则规则:无须添加//左右分解符,直接写正则表达式,注意应该转义的部分,需要原封不动替换的部分加上括号 替换规则:正常书写正则,要继承下来的字符使用$1. ...

  4. php代理模式(proxy design)

    结构模式最后一个,接着进入行为模式. <?php /* The proxy design pattern functions as an interface to an original obj ...

  5. 计算机 KB,MB,GB,TB,PB,EB 计算

    ASCII码:一个英文字母(不分大小写)占一个字节的空间.一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数.换算为十进制,最小值-128,最大值127.如一个ASCII码就是一个字节 ...

  6. ArcGIS 生成等值线图

    1.打开ArcCatalog,准备工作(1)菜单:Customize -> Extensions...,在打开的对话框中把里面的东西都勾上.实际要用的应该是GeoStatistical Anal ...

  7. IDEA+Maven+Mybatis 巨坑:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.rao.mapper.UserMapper.findAll

    org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.rao.mapper.User ...

  8. 利用python画小猪佩奇

    import turtle as t t.pensize(4) t.hideturtle() t.colormode(255) t.color((255,155,192),"pink&quo ...

  9. vim文本编辑器——删除、复制、剪切、更改某一个字符、替换、撤销、关键字搜索

    1.删除: (1)删除光标所在处的字符: 如上图所示:点击一次x键只能删除一个字符. (2)删除光标所在处后的n个字符(nx): 删除前: 输入6x: (3)删除光标所在的行(dd): 删除前: 输入 ...

  10. Traefik 2.0 发布了

    Traefik 2.0 发布了,包含了很多不错的行特性 tcp 路由(同时也支持sni 路由) 参考配置 tcp: routers: to-db-1: entrypoints: - web-secur ...