2017-09-15 85 views
1

스프링 부트를 사용하고 web.xml에서 벗어나기 위해 기존 애플리케이션을 업그레이드하려고합니다. 기능을 구현하는 동안 내 web.xml의 일부로 저에게 평생 동안 스프링 부트로 업그레이드하는 방법을 알 수 없습니다.web.xml에서 스프링 부트로 변경

<security-constraint> 
    <web-resource-collection> 
     <web-resource-name>basic</web-resource-name> 
     <url-pattern>*</url-pattern> 
    </web-resource-collection> 
    <auth-constraint> 
     <role-name>User</role-name> 
    </auth-constraint> 
</security-constraint> 

<login-config> 
    <auth-method>BASIC</auth-method> 
    <realm-name>myrealm</realm-name> 
</login-config> 

여기 내 응용 프로그램 클래스의 :

@SpringBootApplication 
public class Application extends SpringBootServletInitializer{ 

public static void main(String[] args) { 
    SpringApplication.run(Application.class, args); 
} 

    @Override 
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { 
     return builder.sources(Application.class); 
    } 
} 

내가 수 없었던에

내 web.xml 파일의

관련 부분 (이 중요한 경우에 나는 1.5.6를 사용하고 있습니다) 코드 기반 접근법을 사용하여 security-constraint 또는 login-config의 기능을 미러링하는 방법을 결정하는 방법.

누구든지 올바른 방향으로 나를 가르키거나 지적 할 수있는 아이디어가 있다면 큰 감사를 표합니다. 인터넷 검색 및 솔루션을 시도하는 몇 시간 동안 아무 것도 남지 않았습니다.

+0

아마 튜토리얼 "스프링 부팅 보안 자습서"찾기를? 이 검색 용어를 사용하면 많은 것을 찾을 수 있습니다. – Heri

답변

0

@EnableWebSecurity 조사 및 WebSecurityConfigurerAdapter

아래의 예를 참조하십시오

@EnableWebSecurity 
@Configuration 
@Order(SecurityProperties.ACCESS_OVERRIDE_ORDER) 
public class SecurityConfig extends WebSecurityConfigurerAdapter { 
    @Override 
    protected void configure(HttpSecurity http) throws Exception { 
     http 
      .csrf().disable() 
      .authorizeRequests() 
      .antMatchers("/**").authenticated() 
      .anyRequest() 
      .permitAll() 
      .and().httpBasic() 
      .and().sessionManagement() 
      .sessionCreationPolicy(SessionCreationPolicy.STATELESS); 
    } 
}