对数据权限控制的实验

很早就完成了权限系统的编码,这里把一些功能说明贴出来,也希望提提意见。

权限系统基于 acegi 框架实现了从前端 页面到后台数据全面的控制。在权限控制中,它将权限分成五类:   
一是系统权限 ,主要是对模块为单位的权限划分,具体就是用 户对该模块可见不可见,能不能对该模块进行再授权的操作。表现在用户界面就是用户登录系统主页面后,可以看到的顶部菜单和左侧 outlookbar 菜 单的内容控制。作为粒度最大的权限控制,系统实现了 web url 的防盗链功能。举例来说,用户新 开发的一个叫车辆管理的模块,配置在 http://localhost/business/carmanage.action的 url 下, 当对这个模块的权限加以控制后,直接在浏览器中键入 http://localhost/business/carmanage.action 同 样是无法访问的,而不仅仅是界面内容的屏蔽。
二是模块操作权限 ,在对整个模块的权限做出控制后,这里继 续对模块的浏览、增加,修改,删除的操作权限做出控制,也可以理解为对象权限 。还是以车辆管理为 例,不同的人员对这个模块的操作是不同的,有些用户可以新增,删除车辆;而有些用户则只是可以对车辆的情况查看不能修改。通过系统提供的一套 web 标签,页面可以根据用户不同的操作权限屏蔽相应的功能按键。例如删除,新增按键。用户绕过页面直接操作相应业务方法同样也做 到了严格的控制,没有权限的访问会被拒绝同时记入日志。
三是数据范围权限 ,又可以叫做对象实例级权限。事实上不是 每个用户都可以看到所有记录的。以财务管理为例,部门经理只能查看金额小于 1W 的数据;而总经理则 没有限制。 权限系统对这部分权限也做出了全面的控制,可以根据数据类型,相应字段数值范围做出控制。
四是单条数据 ACL 权 限 ,为了满足更严格的数据权限要求, 权限系统对数据实现了单条数据的 ACL 权 限,具体说就是对每条数据都实现了权限控制,每条数据都有一到多条权限数据与其对应。以个人通讯录为例,每个用户都维护自己的一个通讯录,这些数据都只是 对本人可见,其他人不可见。但用户可以对这些数据做出授权,将某条联系方式以授权的方式共享给其他人,并赋予不同的权限,包括拥有,修改,删除,浏览四种 权限。

五是数据字段权 限 ,通过 xml 配置, 系 统 保证了用户的最小粒度的权限控制。每条业务数据权限可以精确控制到每一个字段。包括单个字段的可否浏览以及可否修改。保证了 敏感信息的安全性。


授权,作为权限系统的重要部分, 系统 提供了相当方便的操作体验。以树状 的方式展现权限主体(用户,角色,部门)以及资源,方便,直接,一目了然。区别与传统的 RBAC 模 型,权限不仅仅可以分配给角色,也可以分配给部门和用户。实际的权限是这三者权限的叠加,最大限度的方便用户操作。考虑到用户的扩展,系统提供两个权限继 承规则接口,用户可以自定义权限继承的规则。例如,部门 A 下有部门 A1 , 部门 A 的权限是否由部门 A1 继承。

整个权限系统的数据都建立在系统统一的缓存管理之上,用户登录后,其权限信息即被缓 存,保证系统的效率

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值