最近做权限管理模块,大家给些思路

解决方案 »

  1.   

    把 权限和它所能看到的url地址 存到数据库表中
      

  2.   

    用户表 ,角色表,权限表(能访问到的模块),中间表每个用户对应一个角色,每个角色能方位不同的模块
    中间表联系角色和模块,进而用户能访问不同的模块,其中最为关键的是中间表和权限表之间的联系Users(用户表)
    userID
    userName
    roleID (角色ID,外键)
    Roles(角色表)
    roleID 
    roleNameRights(权限表)
    rightID 
    pageAddressCenter(中间表)
    centerID
    RoleID
    RightID
    --这张表数据
    1 roleID1 rightID1
    2 roleID1 rightID2
    3 roleID1 rightID3
    4 roleID2 rightID2
    5 roleID2 rightID3
    6 roleID2 rightID4
      

  3.   

    个人感觉会弄Oracle就会明白这个了,角色是权限和角色的集合,每个权限针对一个模块,模块当然是要动态生成的了,表现形式为菜单或者其他导航样式工具条。不知道这样理解可对?欢迎拍砖,再把用户分配一个角色,这样是为了使用上的方便。
      

  4.   

    不知道你是WinForm还是Web?
    其实不管是WinForm还是Web,其实现原理都是一样的。如果你是WinForm,我的博客上倒是有现成的文章和例程,自己去看看吧!提供了源码下载的。文章地址:浅谈C# WinForm中实现基于角色的权限菜单
      

  5.   

    再数据库中定义usergroup 定义一个权限管理类 通过定义hasrole 函数 管理
      

  6.   

    难点不在于用户的管理(借用现成的membership就行),在于怎样把权限控制和业务逻辑最大程度的分离开来,让做功能的人尽量少考虑权限的事情,当然完全分离也不太可能(对一些细粒度的权限控制).
    参考一下这篇文章:http://www.cnblogs.com/edrp/archive/2007/03/10/670560.html