在一个论坛里,如何为不同的用户分配不同的权限?
比如一个论坛,有管理员,普通会员,高级会员,贵宾,版主等等,我所想到的是
在保存用户信息的数据库表里设置一个权限字段,1表示普通会员,2表示贵宾,3表示版主
然后当用户执行一个操作的时候,如删除一个帖子,检查用户该字段的值。如果值符合,
就执行删除,。不知道这样行不行?????
实际开发中是这样分配权限的?????

解决方案 »

  1.   

    实际开发中都是通过组和角色进行授权的,一般很少单独对用户设置权限。当新增加一个用户的时候,这个用户都应该有一个所属的组或角色,而对权限的分配是基于组或者角色的。而当一个用户登录后只显示他有权限操作的界面,没有权限的他根本就看不到,更谈不上操作了。比如你的删除操作,如果是一般用户的话,登录后根本就不给他显示删除的操作按钮。控制显示一般都在jsp中完成(一般都是通过标签),检查当前登录的用户,根据所属组或角色决定显示他所能进行的操作。
      

  2.   

    "检查当前登录的用户,根据所属组或角色决定显示他所能进行的操作。"
    如何检查?用户信息保存在bean里,难道根据bean里的一个属性来检查吗??
      

  3.   

    在用户成功登录后把用户Bean放到session中去啊,这样在用户和服务端的整个回话期间都能在session中取到这些信息啊。关于session的问题,如果你不明白,可以看看相关的书籍、文档,都是些基础问题。做B/S离不开session。希望你能好好补习一下基础知识,呵呵
      

  4.   

    bean和session的问题我知道,
    我的意思是想知道怎样把session中的bean的属性和权限关联起来?
    难道还是用字段?bean中的属性对应数据库中的一个字段?
      

  5.   

    bean和session的问题我知道,
    我的意思是想知道怎样把session中的bean的属性和权限关联起来?
    也就是你所说的组
    难道还是用字段?bean中的属性对应数据库中的一个字段?
      

  6.   

    简单的说,你的用户Bean中肯定要有一个组或者角色属性吧,比如叫role,那么你就可以在Bean中把这个属性值取出来啊,然后判断它是否是普通用户角色、管理员角色,根据不同的判断结果进行不同的操作啊。
      

  7.   

    你可以这样啊,做一个权限表,然后用户表里加一个权限字段是nvarchar 类型的 存储权限ID 然后用逗号隔开  到页面上你取出来判断啊。