.NET快速开发整合框架(RDIFramework.NET)
4.10 用户权限管理模块
.NET快速开发整合框架(RDIFramework.NET),基于.NET的快速开发、整合框架,给用户和开发者最佳的.Net框架部署方案。
4.10用户权限管理模块
在实际应用中我们会发现,权限控制会经常变动,如:需要调整角色的分配,需要收回与授予某些角色、用户可访问的模块(菜单)与相应的操作权限、需要给某些角色添加与移除相应的用户等等,如果没有一个灵活可靠的配置管理工具将会使权限控制变得十分麻烦。用户权限管理模块就是为了方便用户、角色权限的集中统一管理而开发的模块。在用户权限管理模块,操作员可以添加或移动用户到指定的角色、可以分配或授予指定用户的模块(菜单)的访问权限、可以收回或分配指定用户的操作(功能)权限、可以对所有用户、角色、模块(菜单)、操作(功能)权限进行集中批量设置,用户授权范围内的设置,表字段权限的设置以及表约束条件权限的设置等。用户权限管理如图4.10.1所示。
图4.10.1用户权限管理
一、用户角色关联。
用户角色关联可以方便的添加与移除当前选择用户所归属的角色,用户归属于某个角色,就意味着该用户“继承”了该角色所拥有的一切权限。用户角色关联如图4.10.2所示。在用户角色关联操作界面上,我们可以为当前用户添加可用角色,也可以移除已经拥有的角色,同时可以查看当前选中角色所拥有的模块(菜单)访问权限。
图4.10.2用户角色关联
单击“添加角色”按钮,打开“选择角色”窗口,选择相应角色后确定即可把所选角色附加到指定的用户上。“选择角色”如图4.10.3所示。如果角色过多,可以通过“角色分类”进行过滤。
图4.10.3选择角色
要移除角色只需要在用户角色关联窗口选中要移除的角色,单击“移除”即可。需要说明的是:移除该角色,该用户就不再具有该角色所拥有的相应模块(菜单)访问权限与相应的操作权限等。在“用户角色关联”界面上,我们还可以查看所选角色所拥有的模块(菜单)访问权限,以为我们做出正确的角色分配提供依据。如图4.10.4角色模块(菜单)权限所示。
图4.10.4角色模块(菜单)权限查看
二、用户权限设置。
用户权限设置可以集中设置当前所选用户的归属角色、模块(菜单)访问权限、拥有的操作权限,是权限设置中经常使用的一个功能。用户权限设置如图4.10.5所示。在“用户权限设置”界面,我们可以很方便的清除当前用户所拥有的所有权限,也可以对其进行模块及操作权限的设置。
图4.10.5用户权限设置
三、用户角色集中批量设置。
用户角色集中批量设置可在一个操作界面对所有有效登录用户授予或收回相应的角色,方便用户操作,用户角色集中批量设置如图4.10.6所示。“清除角色”则清除当前所选用户所拥有的所有角色,“复制角色”与“粘贴角色”功能按钮可以方便的把当前所选用户的角色与另一个角色设置为一至,避免重复点击相应角色带来的麻烦,提高角色分配的效率。
图4.10.6用户角色集中批量设置
四、用户权限批量设置。
用户权限批量设置是一个综合集中设置界面,在权限分配过程中应用最为频繁,通过一个操作界面即可完成常用的角色、模块、操作权限的分配。对于用户过多的情况,还可以模糊过滤用户,方便查找。如果某些用户其角色、模块(菜单)访问权限、操作权限一致,我们可以先设置一个用户的相应权限,再通过“复制权限”的功能,“粘贴权限“可把复制的权限应用到当前选择的用户,提高权限分配的工作效率,同时可有效防止分配遗漏、权限膨胀等类似权限分配所带来的问题。用户权限批量设置如图4.10.7所示,若要分配或收回权限,单击树形节点前的复选框即可完成角色、模块(菜单)、操作权限的分配或收回。
图4.10.7用户权限批量设置
五、用户授权范围设置。
用户授权范围设置可以很好的实现授权的再分配,对于大的集团企业可以明显的减少管理员权限分配的负担与压力,用户授权范围可以在当前用户拥有的权限下,再次有选择的分配给其他的操作人员。通俗点讲就是,某些岗位上工作的人是管理员,但不是所有业务的管理员,只是某个业务领域内的管理员,他在这个业务领域内应该有所有的权限,而且还可以委托别人来管理、可以授权给别人来管理某个业务,这就是用户授权范围管理,类似于数据库权限中的级联授权,用户授权范围如图4.10.8所示。
图4.10.8用户授权范围设置
六、表字段权限设置。
在某些应用中,我们有时需要针对不同的登录用户设置其对特定表的访问,列的访问、编辑权限。在“表字段权限设置”中我们可以设置用户可以访问的数据表,以及对数据表列的访问、编辑、拒绝访问权限。用户的表字段权限设置如图4.10.9所示。
图4.10.9表字段权限设置
在表字段权限设置窗口,左侧列出的数据表,选中即拥有对该表的访问权限,取消则会拒绝访问该表,同时该表对应的列访问、编辑、拒绝访问权限也会同步取消。如果左侧没有列出我们需要的数据表,可以通过“图5.2.2设置需要做表权限控制的数据表”进行设置。
七、约束条件权限设置。
有时我们需要针对不同的用户设置其可以看到某个数据表的数据的条件,在我们这儿就是约束条件,用户对表约束条件设置如图4.10.10所示。
图4.10.10设置用户对表的约束条件
在图4.10.10中,我们设置所选用户“EricHu”对数据表“产品信息表”的约束条件为“ProductPrice>100”,在开发过程中,通过我们的服务接口来得到这个约束条件表达式,就可以对相应用户进行表数据约束的控制了。
要设置相应数据表的约束条件,我们可以单击“设置约束条件表达式”按钮,进行所选表对当前所选用户约束条件进行设置,如图4.10.11所示。
图4.10.11设置特定用户特定表的约束条件
设置好后,我们还可以验证我们设置的约束表达式是否符合要求,同时还可以查看所选用户在该表设置的约束条件下所看到的数据(通过查看约束数据集),同时还可以验证我们所设表达式是否符合语法要求,如图4.10.12所示。设置好后,就可以调用我们的接口来做相应的表数据控制。
图4.10.11验证设置特定用户特定表的约束条件是否正确
作者: EricHu 出处: http://blog.csdn.net/chinahuyong Email: 406590790@qq.com QQ 交流:406590790 平台博客: 【CSDN】http://blog.csdn.net/chinahuyong 【CNBLOGS】http://www.cnblogs.com/huyong 关于作者:高级工程师、信息系统项目管理师、DBA。专注于微软平台项目架构、管理和企业解决方案,多年项目开发与管理经验,曾多次组织并开发多个大型项目,精通DotNet,DB(SqlServer、Oracle等)技术。熟悉Java、Delhpi及Linux操作系统,有扎实的网络知识。在面向对象、面向服务以及数据库领域有一定的造诣。现从事DB管理与开发、WinForm、WCF、WebService、网页数据抓取以及ASP.NET等项目管理、开发、架构等工作。 如有问题或建议,请多多赐教! 本文版权归作者和CNBLOGS博客共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过邮箱或QQ 联系我,非常感谢。