diff --git a/boot-web/src/main/java/com/xwbing/shiro/MyShiroRealm.java b/boot-web/src/main/java/com/xwbing/shiro/MyShiroRealm.java index ccf77df..bff36d4 100644 --- a/boot-web/src/main/java/com/xwbing/shiro/MyShiroRealm.java +++ b/boot-web/src/main/java/com/xwbing/shiro/MyShiroRealm.java @@ -72,7 +72,7 @@ public class MyShiroRealm extends AuthorizingRealm { } /** - * 验证用户身份 + * 认证.登录 * * @param authenticationToken * @return diff --git a/boot-web/src/main/java/com/xwbing/shiro/ShiroConfig.java b/boot-web/src/main/java/com/xwbing/shiro/ShiroConfig.java index 3872b4b..e7bfbfe 100644 --- a/boot-web/src/main/java/com/xwbing/shiro/ShiroConfig.java +++ b/boot-web/src/main/java/com/xwbing/shiro/ShiroConfig.java @@ -13,7 +13,7 @@ import java.util.Map; * 项目名称: boot-module-demo * 创建时间: 2018/3/28 14:06 * 作者: xiangwb - * 说明: + * 说明: anon,authc */ @Configuration public class ShiroConfig { @@ -21,24 +21,31 @@ public class ShiroConfig { public ShiroFilterFactoryBean shirFilter(SecurityManager securityManager) { ShiroFilterFactoryBean shiroFilterFactoryBean = new ShiroFilterFactoryBean(); shiroFilterFactoryBean.setSecurityManager(securityManager); - // 如果不设置默认会自动寻找Web工程根目录下的"/login.jsp"页面 + //配置登录的url和登录成功的url shiroFilterFactoryBean.setLoginUrl("/login"); - // 登录成功后要跳转的链接 shiroFilterFactoryBean.setSuccessUrl("/index"); // 未授权界面; shiroFilterFactoryBean.setUnauthorizedUrl("/403"); - // 拦截器. - Map filterChainDefinitionMap = new LinkedHashMap<>(); + //配置访问权限 + Map chains = new LinkedHashMap<>(); // 配置不会被拦截的链接 顺序判断 - filterChainDefinitionMap.put("/static/**", "anon"); - filterChainDefinitionMap.put("/ajaxLogin", "anon"); - // 配置退出过滤器,其中的具体的退出代码Shiro已经替我们实现了 - filterChainDefinitionMap.put("/logout", "logout"); - filterChainDefinitionMap.put("/add", "perms[权限添加]"); - // :这是一个坑呢,一不小心代码就不好使了; - // - filterChainDefinitionMap.put("/**", "authc"); - shiroFilterFactoryBean.setFilterChainDefinitionMap(filterChainDefinitionMap); + chains.put("/favicon.ico", "anon"); + chains.put("/static/**", "anon"); + //映射到登录页面,不拦截 + chains.put("/","anon"); + //映射swagger文档 + chains.put("/doc","anon"); + //验证码 + chains.put("/captcha","anon"); + //swagger + chains.put("/v2/api-docs","anon"); + chains.put("/swagger-resources","anon"); + chains.put("/configuration/ui","anon"); + chains.put("/configuration/security","anon"); + //德鲁伊监控 + chains.put("/druid","anon"); + chains.put("/**", "authc"); + shiroFilterFactoryBean.setFilterChainDefinitionMap(chains); System.out.println("Shiro拦截器工厂类注入成功"); return shiroFilterFactoryBean; }