控制数据表中的字段权限及单元格权限


我们习惯了在页面上有几个按钮,控制这几个按钮的权限,都做得都很熟练,例如有 btnAdd 添加按钮,btnEdit 编辑按钮,btnDelete 删除按钮,此

  页面是学生基本信息管理页面 frmStudentManager。

  那我们可以设置如下权限对应关系:

  "AddStudent" 权限对应 -> "frmStudentManager.btnAdd" 按钮的可用属性

  "EditStudent" 权限对应 -> "frmStudentManager.btnEdit" 按钮的可用属性

  "DeleteStudent" 权限对应 -> "frmStudentManager.btnDelete" 按钮的可用属性

  这个大家都很好理解了。

  若学生这个表里有 RealName姓名、Code编号、Age年龄、Sex性别等字段,用户能访问那些列也需要权限控制,大家就很容易糊涂了,其实也是很简单的道理,只是我们没彻底想同问题的本质而已,其实我们可以设置如下权限对应关系:

  "ViewStudentRealName" 权限对应 -> 列表中 "RealName姓名 字段是否可见"

  "ViewStudentCode" 权限对应 -> 列表中 "Code编号 字段是否可见"

  "ViewStudentAge" 权限对应 -> 列表中 "Age年龄 字段是否可见"

  "ViewStudentSex" 权限对应 -> 列表中 "Sex性别 字段是否可见"

  只不过是多了几个权限,有些权限是对应按钮的可用属性、有些对应列的可见属性而已。单元格的权限控制,也是以上同样的原理,可以举一反三,只是有相应的唯一权限对应每个单元格就可以了。

  其实,难是不难,就差捅破那层纸而已,基本原理是一样的,只是换了个表现方式而已。在过去的几年里经常遇到,这样的提问,今天心情好写个文章,给大家参考参考吧,日后可能派上用处。

  至于说数据库的所有的表,所有的字段的自动控制等,那就是另一个范畴的问题了,以上只是解决问题的核心思想,你稍微变通一下,就可以搞定了,甚至对数据源的控制,干脆没权限的数据连读都不读出来,那也是可以按以上的思想解决的,那就要看你自己实现了。

  将权限管理、工作流管理做到我能力的极致,一个人只能做好那么很少的几件事情



相关阅读:
javaScript同意等待代码实现心得
JScript中值类型的封箱与拆箱
使用MaxMind 根据IP地址对访问者定位
在unix上让apache支持asp
成功做好网络管理员IIS使用十大原则
CSS3特性:CSS3 target伪类
c# Random快速连续产生相同随机数的解决方案
oracle多条件查询分页存储过程
php utf-8转unicode的函数
模板引擎正则表达式调试小技巧
Can’t open file:'[Table]mytable.MYI'
Oracle 10g手工创建数据库个人经验
ASP.NET下上传图片到数据库,并且读出图片的代码(详细版)
js仿淘宝的拼音检索特效代码
快速导航

Copyright © 2016 phpStudy |