spring boot用户登录之后根据角色转不同页面

spring boot结合spring security实现登录后根据角色转不同页面。
最近做项目的时候遇到了这样一个问题:管理员登录之后要进入后台管理系统,但是用户登录之后则个人管理页面。
查阅资料,得到了这样一种较为简洁的方法,记录一下~
下面是一段WebSecurityConfig中的代码

   protected void configure(HttpSecurity http)throws Exception{
        http.authorizeRequests().antMatchers("/permanager**").authenticated().antMatchers("/specil**").authenticated().
                antMatchers("/htshouye**").hasAuthority("admin").anyRequest().permitAll().and().formLogin().loginPage("/login").defaultSuccessUrl("/qufen").failureUrl("/login?error=true").
                permitAll().and().rememberMe().tokenValiditySeconds(12009600).key("mykey")
        .and().logout().logoutSuccessUrl("/login").permitAll();
    }

重点在与defaultSuccessUrl(“/qufen”),实现了登录成功之后转向/qufen,
我们只需要在control中对于/qufen的请求进行处理即可:即根据用户的权限返回不同的页面
笔者这里的用户分为了user和admin,因此做了如下处理:

    @RequestMapping(value="/qufen")
    public String qufen(){
        Authentication auth = SecurityContextHolder.getContext().getAuthentication();
        if(auth.getAuthorities().toString().equals("[user]"))
            return "index";//如果是客户登录
        else
            return "htshouye";//如果是后台管理人员登录
    }

大家可以根据自己的需求做不同的处理~~

©️2020 CSDN 皮肤主题: 大白 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值