在项目中,权限要细化到增删改查。
请教一下几个问题?
1,数据库怎么设计?
2,页面上怎么导航权限?
3,页面上怎么控制增删改查?(隐藏按钮,或者点击告诉没有权限)

解决方案 »

  1.   

    可以控制action通过过滤器拦截
      

  2.   

    这个要全局规划的。
    ----------------
    如果请求有特点包还权限值那么你可以用拦截器。
    如果你想通过映像配置那就要想怎么用函数.
    ------------------
    如下有本人的一套方案,自己研究:--反射方法表T_REF_METHOD
    CREATE TABLE IF NOT EXISTS  T_REF_METHOD(
    RE_ID INTEGER NOT NULL AUTO_INCREMENT COMMENT 'ID', 
    ROLE_ID int(4) NOT NULL COMMENT '角色ID',
    TASK_DEF_ID bigint(20) COMMENT '任务定义ID', 
    PRG_SUB_NAME varchar(20) NOT NULL COMMENT '子项目名',
    KEY_NAME varchar(50) NULL COMMENT '导向关键字',
    METHOD varchar(100) NOT NULL COMMENT '方法名称',
    PRIMARY KEY (RE_ID)
    )函数写法
    METHOD(统一参数){}
      

  3.   

    1,数据库怎么设计?
       [看自己的需求吧,一般来说,权限与用户的设计是分开的,看看windows就知道了,用户属于了某个组后, 就拥有了权限]
     
    2,页面上怎么导航权限? 
       [这个自己定吧,无所谓]3,页面上怎么控制增删改查?
       [永远不要依靠前台页面来做,即使前台做了,也要在业务层做严格的管控]
      

  4.   

    数据库里要有角色(js)的字段。
    页面上<s:if test="js==?"/>  </s:if>
    各种角色独有的功能写在里面
      

  5.   

    一个完整的权限系统不是那么简单的~~~~
    特别是在权限分配的时候,一般很少有一对一的权限设计
    这样数据库负担很大
    除非你们人少一般都是 
    权限的底层是 增删改查
    然后把这4项分组人的权限 底层是人的ID (包括领导ID)  打个比方
    上层 是部门 一个部门对应多个人就这样简单的4项增删改查 01 02 03 04   
    增删改查组 01组 02组 03 组 04组 05组。(组里包括增删改查的某几个,当然有时候这层可以不要)
    人   iD   0001   0002  0003  ...
    部门 001  002 003 ...交叉编组 人|权限  组合0001|01
    部门|权限 001|01
      

  6.   

    1.给需要控制权限的按钮一个唯一的ID
    2.权限分配时,先用JS找出权限分配页面所有的button,将需要控制的button的ID和用户ID保存到数据库
    3.用户登陆后,将所有权限控制的button的ID数组查出来放到session,然后在页面上判断登陆用户是否
    有此按钮的权限
      

  7.   

    晕 没写完就提交了
    点错了把这些对应的 组和 ID 分配到 每个画面实现的时候 在每个画面去 ID 解析(写个共通) 
     解析后得出该用户的权限 在页面实现 具体实现 看你用的什么技术了
      

  8.   

    很多做法理论上很好,可是工程上比较累。我来说说工程上实际的做法吧。
     1,数据库怎么设计?
        数据本身不做特别设计。只是一般增加权限表,角色表,用户表和关联表。
        权限表: 记录所有权限项目。
        角色表: 比较流行,可以用身份表示权限,也可以用部门表示权限。
        用户表: 管理所有用户信息,包括密码,姓名等等。
        关联表: 包括用户和角色的关联表,和 角色与权限的关联表。 多多关联。
     2,页面上怎么导航权限?
        所有权限分菜单项实现最简单。就是 XXX查询,XXX新增,XXX修改,XXX删除四个菜单。
        简单的做法,查询 是基本权限,没有就查询,删除,修改的菜单。
        修改,删除要同时含查询权限。
        新增独立权限。
     3,页面上怎么控制增删改查?(隐藏按钮,或者点击告诉没有权限)
        不需要了。
      

  9.   

    建议lz学习一下spring的spring security如何数据不牵涉到细粒度方面的控制,spring security就可以完全实现你需要的功能!
      

  10.   

    就设计一张表,再用sql语句,控件做增删改行不