2017-03-23 1 views
3

저는 Spring MVC 4를 사용하고 있으며 apache shiro 보안을 포함해야하는 프로젝트가 있습니다. 나는 웹에서 내 문제의 해결책을 찾으려고 노력했지만 무언가를 얻을 수는 없었다. Shiro의 웹 사이트에는 가이드가 있지만이 예제는 xml 구성된 Spring 프로젝트에만 해당되며 내 프로젝트에는 xml이 전혀 포함되어 있지 않으며 Shiro를 주석으로 구성하려고 할 때만 실패합니다. 내가이 프로젝트를 실행할 때 내 모든 엔드 포인트에 액세스 할 수 있으며 그 중 일부는 시로가 제한하지 않습니다. 내 구성이 잘못되었다고 생각하지만 잘못된 부분을 파악할 수 없습니다. 스프링 부트를 사용할 권한이 없습니다. (예를 들어 있습니다.) 사전에Spring MVC non xml 프로젝트와 함께 Apache Shiro 사용

@Configuration 
@EnableWebMvc 
@ComponentScan(basePackages = "com.myproject.menu") 
public class AppConfiguration extends WebMvcConfigurerAdapter{ 


@Override 
public void addResourceHandlers(ResourceHandlerRegistry registry) { 
    registry.addResourceHandler("/**").addResourceLocations("/"); 
} 

@Bean(name="shiroFilter") 
public ShiroFilterFactoryBean shiroFilter(){ 
    ShiroFilterFactoryBean shiroFilter = new ShiroFilterFactoryBean(); 
    shiroFilter.setLoginUrl("/MenuTest/login"); 
    shiroFilter.setFilterChainDefinitions("/MenuTest/init=anon"); 
    shiroFilter.setFilterChainDefinitions("/MenuTest/**=authc"); 
    shiroFilter.setSecurityManager(realm()); 
    return shiroFilter; 
} 

private DefaultWebSecurityManager realm(){ 
    DefaultWebSecurityManager realm = new DefaultWebSecurityManager(); 
    return realm; 
} 
} 

들으 : 여기 내 구성 클래스입니다!

답변