B/S页面通用数据权限控制[转]
2010-09-13 17:17
387 查看
数据权限常见场景有:
数据仅部门级可见
数据仅本人可见
数据仅某角色可见
在可见的基础上,进行功能控制: 修改,删除
在树形结构里,在可见基础上进行 新增/修改/删除控制
我的实现方式: 资源---所有者 (请思考哪些可以是资源, 哪些可以是所有者)。 例如:在一个OA应用中的拟办工作,它是所有单证流程的起始点。但不同的流程面,有效的发起人是必须限定的:请假单--全体人员; 收文发文--办公室人员;会议室申请单--项目经理;下面我将实现的是:所有的单证都从属于类别,所有属于“OA单证”,仅“办公室”人员可以拟定。
确定资源定义位置。 如用户,则用户维护页是该资源的位置,资源的Id就是UserId。 这里进入“表单类别设定页面”。
2. 为指定资源设置“所有者”。 所有者类型可以有: 部门/人员/工作组/角色组
3. 保存设置。 这样就配置了仅“办公室”“陈伟”能拟定“OA表单”了。
4.现在进入“拟办工作页面”。 此时权限尚未启用。 (哪些点可以进行权限控制? Request—>Service—>Dao—>Db 已及反方向)
5. 在拟办工作页面, 生成树形节点, 查询节点中,加入c.Id 控制。 这就意味着, 输出列表时,会检验每一个“类别”,判断当前用户是否属于授权的“部门/用户/工作组”
6. 用财务部人员登录系统,类别“OA单证”已经消失了。
7.以上Magic仅仅是QueryInfo在提交NHibernate之前的一个小动作,调用AclHQLInjector而已。 目前的触发条件是AclProperty。 对于大量数据权限定义的情况, 完全可以将Inject条件在数据库中定义。 QueryInfo默认触发检验即可。
8. 最后可见 数据权限设置表 的简单结构:
来源:/article/5957104.html
相关文章推荐
- B/S页面 通用数据权限控制
- [BI] 通用数据级权限控制解决方案的实现(二):Cube中的角色设置与数据级权限控制
- B/S页面 通用权限控制(2)
- 通用数据级权限控制解决方案的实现(一):Cube中的自定义DLL
- [BI] 通用数据级权限控制解决方案的实现(一):Cube中的自定义DLL
- 通用数据级权限控制解决方案的实现(二):Cube中的角色设置与数据级权限控制
- emacs orgmode 文档元数据 控制发布页面显示数据
- 通用权限管理设计 之 数据权限
- 基于Unity的AOP的符合基于角色的访问控制(RBAC)模型的通用权限设计
- html拾遗第2天,页面上进行权限控制
- Asp.net 权限控制 利用用户控件include到页面
- C#.NET 大型通用信息化系统集成快速开发平台 4.0 版本 - 省市区数据权限的实现效果
- 如何在应用系统中实现数据权限的控制功能(2)
- 走火入魔通用权限管理不仅是权限设计更是总体设计规划、快速开发集成平台(集中控制体系)
- 权限管理页面控制-替换session
- android通过权限设置控制数据共享程序
- C#.NET通用权限管理在DB2数据库上运行的脚本参考 - 通过程序将数据导入到目标数据库中
- SharePoint【用户访问控制】-- sharepoint 判断当前用户在当前页面是否有某项权限
- 解决asp.net页面插入数据时权限不足问题
- 通用数据权限管理系统设计(一)