权限管理编程的几种设计方式
2011-03-19 09:32
309 查看
权限管理是所有网络软件都无法逃避的功能,只要是多用户使用,就必须为特定的用户访问特定的功能设置权限,从目前的技术上看,无非如下几种:
【只设置允许权限】
针对特定组或用于,只对于授权访问的功能设置记录,这样在权限计算时,只要登录人有在权限清单中出现,则具有权限,这样处理编程比较简单,但对于配置权限的人就会非常痛苦,尤其是组织结构复杂时,如某个功能对于小组所有成员都可访问,但x除外,这样在设置时就要增加多个组,对于不太熟悉逻辑思维的日常管理人员,这样做无疑是灾难,他们宁可一个一个人用户的添加删除,也不愿用设置后自己也不知是否正确的组技术。其结果往往是放弃权限管理,大家谁都能用,或者不能用。
【可以设置一票否决的拒绝权限】
常用目录管理的网管员都知道,在目录权限配置时,是可以设置拒绝权限的,一旦设置了拒绝权限,该组内所有的成员就直接拒绝访问该目录,这样管理员就不用担心是否有不该访问的人员在配置组时误设置了访问,但这样做也带来问题,因为对组设置了拒绝后,可能本来应可以访问资源的组内用户也没法访问资源了,而且找原因来很麻烦,因此在设置拒绝时,网管员大多只对个人设拒绝,而不对组设拒绝。
【通过优先级排序确定最终权限方式】
目前我没有发现哪个软件在使用该方式,但在ISA2004服务器的过滤方式配置时,采用了此种架构,该方式的特点是一方面每条权限记录包括允许和拒绝,但实际的权限是根据权限清单中的顺序确定的结果,这种方式其原理类似于编程技巧中采用do...while(false)循环中设置if()..break的方式简化逻辑运算的方式,如果某个用户,在第1条记录中的组出现了,定义允许操作,就不再检查后面的设置,权限设置人员可以较清楚的通过制定来配置更加有效的权限管理模式。
【只设置允许权限】
针对特定组或用于,只对于授权访问的功能设置记录,这样在权限计算时,只要登录人有在权限清单中出现,则具有权限,这样处理编程比较简单,但对于配置权限的人就会非常痛苦,尤其是组织结构复杂时,如某个功能对于小组所有成员都可访问,但x除外,这样在设置时就要增加多个组,对于不太熟悉逻辑思维的日常管理人员,这样做无疑是灾难,他们宁可一个一个人用户的添加删除,也不愿用设置后自己也不知是否正确的组技术。其结果往往是放弃权限管理,大家谁都能用,或者不能用。
【可以设置一票否决的拒绝权限】
常用目录管理的网管员都知道,在目录权限配置时,是可以设置拒绝权限的,一旦设置了拒绝权限,该组内所有的成员就直接拒绝访问该目录,这样管理员就不用担心是否有不该访问的人员在配置组时误设置了访问,但这样做也带来问题,因为对组设置了拒绝后,可能本来应可以访问资源的组内用户也没法访问资源了,而且找原因来很麻烦,因此在设置拒绝时,网管员大多只对个人设拒绝,而不对组设拒绝。
【通过优先级排序确定最终权限方式】
目前我没有发现哪个软件在使用该方式,但在ISA2004服务器的过滤方式配置时,采用了此种架构,该方式的特点是一方面每条权限记录包括允许和拒绝,但实际的权限是根据权限清单中的顺序确定的结果,这种方式其原理类似于编程技巧中采用do...while(false)循环中设置if()..break的方式简化逻辑运算的方式,如果某个用户,在第1条记录中的组出现了,定义允许操作,就不再检查后面的设置,权限设置人员可以较清楚的通过制定来配置更加有效的权限管理模式。
相关文章推荐
- 权限管理编程的几种设计方式
- 【自然框架】之通用权限:数据库设计的几种使用方式
- 如何管理以编程方式在 Windows NT 中的用户权限(C 语言)
- 【自然框架】之通用权限:数据库设计的几种使用方式
- 如何在Windows NT中以编程方式管理用户权限
- 【自然框架】之通用权限:数据库设计的几种使用方式
- 几种网络编程方式的比较
- 通用数据权限管理系统设计
- windows认证与权限管理设计
- 设计权限管理系统(十二)
- 权限控制管理设计方法(指数幂)
- DBA 面试题之---表空间管理方式有哪几种,各有什么优劣。
- ABP+AdminLTE+Bootstrap Table权限管理系统第七节--登录逻辑及几种abp封装的Javascript函数库
- 知识管理系统Data Solution研发日记之十四 如何以编程方式处理PDF格式文档
- 在EF的code frist下写稳健的权限管理系统:界面设计(四)
- 通用权限管理设计 之 数据库结构设计
- 基于RBAC模型的权限管理系统的设计和实现
- 实现业务系统中的用户权限管理--设计篇
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(3)-面向接口的编程
- 基于角色-资源-用户的权限管理设计