一个web管理系统,怎么样来分配权限?应该怎么设计?请高人指教
qq 2770967

解决方案 »

  1.   

    用户--角色--功能
    简单的说:角色绑定到功能上.如角色1绑定到菜单1,菜单2;角色2可以绑定到菜单1,菜单3;
    然后用户绑定到角色.可以拥有多个角色.如user1有角色1,角色2,user2有角色2.
    那么结果权限就出来了:就是user1可以操作菜单1,菜单2;菜单3;而user2只能操作菜单3;
    希望可以给你帮助
      

  2.   

    楼上的方法不错 而且这样容易扩展 最近做的项目里就用到了可以参考windows操作权限发分配
      

  3.   

    Sunny319
    好办法。。非常感谢
    在实现过程中,怎么实现能简单的说一下么
      

  4.   

    Sunny319说的没错我也是这样做的
    简单实现:建3个表(用户表tbl_user,角色表tbl_role,权限表tbl_pri)
    tbl_user中的字段
    userId(用户id) account password roleId(对应角色id) ...
    tbl_role中的字段
    roleId(角色id) roleName ... 
    tbl_pri中的字段
    priId(权限id) roleId(对应角色id) url(有权限看的页面)...
    当然你可以另外建一个表专门记录url的这样就更方便管理,还可以根据这个表得出菜但==
    还可以设置对具体页面是否有查看、编辑、添加等功能
      

  5.   

    数据库表结构
    1. 功能点表
    表名:scopeManage_function
    功能:记录所有功能点基本信息。
    简介:
    字段:
    序号 字段 类型及长度 是否为空 字段说明 备注
    1 functionId Int(4) 否 功能编号 自增长
    2 functionAlias VarChar(10) 否 功能别名 英文名称
    3 functionName VarChar(50) 否 功能名称
    备注:
       
    2. 角色表
    表名:scopeManage_role
    功能:记录所有角色的信息。
    简介:
    字段:
    序号 字段 类型及长度 是否为空 字段说明 备注
    1 roleId Int(4) 否 角色编号 自增长
    2 roleName VarChar(50) 否 角色名称
    备注:
       
    3. 角色与功能关系表
    表名:scopeManage_roleFunctionRelation
    功能:记录某个角色和该角色所属功能之间的关系。
    简介:
    字段:
    序号 字段 类型及长度 是否为空 字段说明 备注
    1 roleId Int(4) 否 角色编号
    2 functionId Int(4) 否 功能编号
    备注:
       
    4. 角色与用户关系表
    表名:scopeManage_roleUserRelation
    功能:
    简介:记录某个用户和该用户角色之间的关系。
    字段:序号 字段 类型及长度 是否为空 字段说明 备注
    1 roleId Int(4) 否 角色编号
    2 userId VarChar(10) 否 用户编号 备注:
       
    5. 用户表
    表名:user
    功能: 
    简介:这是个临时的表,这张表要根据具体的项目而设计。不过设计的时候表名要用 user,用户编号,用户姓名和密码要用,userId,userName和userPsWd。
    字段:
    序号 字段 类型及长度 字段说明 备注
    1 userId VarChar(10) 用户编号
    2 userName VarChar(30) 用户姓名
    3 userPsWd VarChar(20) 用户密码
    4 depaId Int(4) 所属部门编号
    5 depaName VarChar(30) 所属部门名称
    6 habitus Int(1) 用户状态 0,为删除状态
    备注:
       
    6. 部门类型表
    表名:scopeManage_depaType
    功能:记录部门类型的信息(包括类型编号和类型名称)。 
    简介:
    字段:
    序号 字段 类型及长度 字段说明 备注
    1 depaTypeId Int(4) 部门类型编号
    2 depaTypeName VarChar(50) 部门类型名称
    备注:
       
    7. 部门信息表
    表名:scopeManage_department
    功能:记录部门的基本信息及部门之间的等级关系。
    简介:
    字段:
    序号 字段 类型及长度 字段说明 备注
    1 depaId Int(4) 部门编号
    2 depaName VarChar(30) 部门名称
    3 superDepaId Int(4) 上级部门编号
    4 superDepaName VarChar(30) 上级部门名称
    5 depaTypeId    Int(4) 部门类型编号
    6 depaTypeName VarChar(30) 部门类型名称