merge
This commit is contained in:
@@ -3,8 +3,10 @@ package com.xwbing.shiro;
|
||||
import org.apache.shiro.mgt.SecurityManager;
|
||||
import org.apache.shiro.spring.web.ShiroFilterFactoryBean;
|
||||
import org.apache.shiro.web.mgt.DefaultWebSecurityManager;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.PropertySource;
|
||||
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.Map;
|
||||
@@ -16,37 +18,43 @@ import java.util.Map;
|
||||
* 说明: anon,authc
|
||||
*/
|
||||
@Configuration
|
||||
@PropertySource("classpath:shiro.properties")
|
||||
public class ShiroConfig {
|
||||
@Value("${rememberMeCookieMaxAge}")
|
||||
private Integer rememberMeCookieMaxAge;
|
||||
@Value("${globalSessionTimeout}")
|
||||
private Long globalSessionTimeout;
|
||||
@Value("${sessionValidationInterval}")
|
||||
private String sessionValidationInterval;
|
||||
@Value("${sessionsCacheName}")
|
||||
private String sessionsCacheName;
|
||||
@Value("${sessionIdCookieName}")
|
||||
private String sessionIdCookieName;
|
||||
|
||||
@Bean
|
||||
public ShiroFilterFactoryBean shirFilter(SecurityManager securityManager) {
|
||||
public ShiroFilterFactoryBean shirFilter() {
|
||||
ShiroFilterFactoryBean shiroFilterFactoryBean = new ShiroFilterFactoryBean();
|
||||
shiroFilterFactoryBean.setSecurityManager(securityManager);
|
||||
//配置登录的url和登录成功的url
|
||||
shiroFilterFactoryBean.setLoginUrl("/login");
|
||||
shiroFilterFactoryBean.setSuccessUrl("/index");
|
||||
// 未授权界面;
|
||||
shiroFilterFactoryBean.setUnauthorizedUrl("/403");
|
||||
shiroFilterFactoryBean.setSecurityManager(securityManager());
|
||||
//配置访问权限
|
||||
Map<String, String> chains = new LinkedHashMap<>();
|
||||
// 配置不会被拦截的链接 顺序判断
|
||||
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");
|
||||
//配置登录的url和登录成功的url
|
||||
shiroFilterFactoryBean.setLoginUrl("/user/login");
|
||||
// shiroFilterFactoryBean.setSuccessUrl("/index");
|
||||
// 未授权界面;
|
||||
shiroFilterFactoryBean.setUnauthorizedUrl("/403");
|
||||
// chains.put("/favicon.ico", "anon");
|
||||
// chains.put("/static/**", "anon");
|
||||
// chains.put("/", "anon");
|
||||
// chains.put("/doc", "anon");
|
||||
// chains.put("/captcha", "anon");
|
||||
// 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;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user