구성을 사용자화 하기
보안 구성 사용자화하기
대표적인 예로 애플리케이션에 보안을 적용할 때 자동 구성은 적합하지 않다.
다음에 살펴 볼 SecurityConfig는 아주 기본적인 스프링 시큐리티 구성이다.
@Configuration
@EnableWebSecurity
Public class SecurityConfig extends WebSecrityConfigurerAdapter {
@Autowired
private ReaderRepository readerRepository;
@Override
protected void configure(HttpSecurity http) whroes Exception {
http
.authorizeRequests()
.antMatchers(“/”).access(“hasRole(‘READER’)”) // READER 권한 필요
.antmatchers(“/**”).permitAll()
.and()
.formLogin(“Login”)
.failureUrl(“/login?error=true”);
}
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.userDetailService(new UserDetailService( ){
@Override
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
return readerRepository.findOne(username);
}
}
}
}결론은 스프링 부트 자동 구성을 오버라이드 하려면 명시적인 구성만 작성하면 된다.
프로퍼티를 이용하여 외부적으로 구성하기
application.properties와 application.yml 파일은 다음 네 곳 어디에나 배치할 수 있다.
유용한 프로퍼티
프로파일 및 에러 페이지


Last updated