spring boot --- shiro

本文介绍了如何在Spring Boot项目中使用Shiro进行权限管理,包括配置类的编写、UserRealm实现用户授权认证逻辑以及LoginController的设计。
摘要由CSDN通过智能技术生成

spring boot — shiro

简单的需要三步,1:shiro的配置类,2:userRealm(用户的授权与认证逻辑),3:loginController

  1. shiro配置类
/**
 * shiro配置类
 */
@Configuration
public class ShiroConfig {
   

    /**
     * 创建ShiroFilterFactoryBean
     */
    @Bean
    public ShiroFilterFactoryBean getShiroFilterFactoryBean(){
   
        ShiroFilterFactoryBean shiroFilterFactoryBean = new ShiroFilterFactoryBean();
        //设置安全管理器
        shiroFilterFactoryBean.setSecurityManager(getDefaultWebSecurityManager());
        /**
         * 添加Shiro内置过滤器
         *  常用的过滤器
         *      anon: 无需认证(登录) 可以访问
         *      authc: 必须认证才可以访问
         *      user:如果使用rememberMe的功能才可以访问
         *      perms:该资源必须得到资源权限才可以访问
         *      role:该资源必须得到角色权限才可以访问
         *
         */
        Map<String,String> filterMap = new LinkedHashMap<>();
        //将first路径过滤为必须登录
        //可以使用/*通配所有页面
        filterMap.put("/first","authc");
        filterMap.put("/second","authc");
        //设置/second为
        filterMap.put("/second","perms[vip1,vip2]");
        filterMap.put("/first","perms[vip1]");
        //配置upd路径无需登陆即可访问
        filterMap.put("/youke","anon");
        //设置shiro的自带登出效果
        filterMap.put("/logout","logout");
        //设置自动跳转登录页
        shiroFilterFactoryBean.setLoginUrl("/toLogin");
        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值