下载此文档

C#中权限管理.doc


文档分类:管理/人力资源 | 页数:约27页 举报非法文档有奖
1/27
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/27 下载此文档
文档列表 文档介绍
常用的位运算主要有与(&),或(|)和非(~),比如:1&0=0,1|0=1,~1=0在设计权限时,,先建立一个枚举表示所有的权限操作:[Flags]publicenumPermissions{Insert=1,Delete=2,Update=4,Query=8}  [Flags]表示该枚举可以支持位运算,而枚举的每一项值,我们用2的n次方来赋值,这样表示成二进制时刚好是1=0001,2=0010,4=0100,8=1000等,每一位表示一种权限,1表示有该权限,0表示没有. 接下来是权限的运算:,,0001|0100=0101,这样就表示同时具有第一位和第三位的权限了,枚举表示为:Permissionsper=|,使用与运算+非运算来实现,如上面要去掉Insert权限,操作为:Permissionsper&=~&~0001=0101&1110=,使用与运算,当判断用一用户是否具有该操作权限时,要把用户的的权限与操作权限进行与运算,如果得到的结果仍是操作权限,则表示用户具有该权限:Permissionsper=|;if(per&=){//有操作权限}比较过程为0101&0001=0001,0001的0位用与运算把其它位都置成0, 在开发很多项目的时候,都会用到用户权限管理,我也在很多项目里做过权限控制,所以,,减少模块的耦合度,做成一个独立的模块,:。设置权限类别和权限信息。。,,数据结构分析设计Postedon2010-07-0618:35MARTIALIS阅读(130)评论(0)编辑收藏所属分类:,sqlserver实现业务系统中的用户权限管理--设计篇 B/S系统中的权限比C/S中的更显的重要,C/S系统因为具有特殊的客户端,所以访问用户的权限检测可以通过客户端实现或通过客户端+服务器检测实现,而B/S中,浏览器是每一台计算机都已具备的,如果不建立一个完整的权限检测,那么一个“非法用户”很可能就能通过浏览器轻易访问到B/S系统中的所有功能。因此B/S业务系统都需要有一个或多个权限系统来实现访问权限检测,让经过授权的用户可以正常合法的使用已授权功能,而对那些未经授权的“非法用户”将会将他们彻底的“拒之门外”。下面就让我们一起了解一下如何设计可以满足大部分B/S系统中对用户功能权限控制的权限系统。需求陈述不同职责的人员,对于系统操作的权限应该是不同的。优秀的业务系统,这是最基本的功能。可以对“组”进行权限分配。对于一个大企业的业务系统来说,如果要求管理员为其下员工逐一分配系统操作权限的话,是件耗时且不够方便的事情。所以,系统中就提出了对“组”进行操作的概念,将权限一致的人员编入同一组,然后对该组进行权限分配。权限管理系统应该是可扩展的。它应该可以加入到任何带有权限管理功能的系统中。就像是组件一样的可以被不断的重用,而不是每开发一套管理系统,就要针对权限管理部分进行重新开发。满足业务系统中的功能权限。传统业务系统中,存在着两种权限管理,其一是功能权限的管理,而另外一种则是资源权限的管理,在不同系统之间,功能权限是可以重用的,而资源权限则不能。关于设计借助NoahWeb的动作编程理念,在设计阶段,系统设计人员无须考虑程序结构的设计,而是从程序流程以及数据库结构开始入手。为了实现需求,数据库的设计可谓及其重要,无论是“组”操作的概念,还是整套权限管理系统的重用性,都在于数据库的设计。我们先来分析一下数据库结构: 首先,action表(以下简称为“权限表”),gorupmanager表(以下简称为“管理组表”),以及master表(以下简称为“人员表”),是三张实体表,它们依次记录着“权限”的信息,“管理组”的信息和“人员”的信息。如下图: 这三个表之间的关系是多对多的,一个权限可能同时属于多个管理组,一个管理组中也可能同时包含多个权限。同样的道理,一个人员可能同时属于多个管理组,而一个管理组中也可能同时包含多个人员。如下图: 由于这三张表之间存在着多对多的关系,那么它们之间的交互,

C#中权限管理 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数27
  • 收藏数0 收藏
  • 顶次数0
  • 上传人xxq93485240
  • 文件大小521 KB
  • 时间2019-12-15