狼King的gravatar头像
狼King 2015-07-15 11:43:18

spring+spring mvc + mybaits 如果提取出公共的 controller怎么过滤权限?

 spring + spring mvc + mybaits 如果提取出公共的 controller 那么
 怎么过滤权限(之前是根据URL判断权限的)
 如:公共controller 
 
     @RequestMapping(value="/bangDataGrid",method = RequestMethod.GET)
    public List<Map<String, String>> bangDataGrid(HttpServletRequest request){
        
        return null;
    }
    请求地址不一样时候的权限控制
    权限设置:
        用户a 有:用户列表(bangDataGrid_users)、角色列表(bangDataGrid_role)、日志列表(bangDataGrid_log)
        用户b 有:用户列表(bangDataGrid_users)
    用户权限控制:用户a的操作权限集合 =  查询用户权限 url = "对应的URL地址";
    说明:这样是可以处理权限问题
      
    请求地址一样时候的权限控制
    权限设置:
        用户a 有:用户列表(bangDataGrid)、角色列表(bangDataGrid)、日志列表(bangDataGrid)
        用户b 有:用户列表(bangDataGrid)
    用户权限控制:用户a的操作权限集合 =  查询用户权限 url = "对应的URL地址";
    说明:这样是旧方式不可以处理权限问题,这样的处理存在权限漏洞。
    

所有回答列表(3)
雨、小雨的gravatar头像
雨、小雨  LV8 2015年7月16日

登陆成功把 user 保存在 session 中,每次请求查询数据库判断权限(安全,效率低,因为是事务同步可能反应很慢);

或者

登陆成功把 user 对应权限保存在 session 中,每次请求判断权限(不用每次都查询数据库,比较快)。

cvsFeng的gravatar头像
cvsFeng  LV21 2015年7月29日

采用url路径拦截多简单啊 /post/admin   /post/commons    /post/member 

jobinbai的gravatar头像
jobinbai  LV2 2015年7月31日

可以使用拦截器或者过滤器来做

顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友