코드 추가
@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
log.debug("디버그 : filterChain 빈 등록됨");
http.headers().frameOptions().disable(); // iframe 허용 X
http.csrf().disable();
.
.
.
public CorsConfigurationSource configurationSource() {
log.debug("디버그 : CorsConfigurationSource cors 설정이 SecurityFilterChain에 등록됨");
CorsConfiguration configuration = new CorsConfiguration();
configuration.addAllowedHeader("*"); // 모든 헤더 받기
configuration.addAllowedMethod("*"); // GET, POST, DELETE, PUT 전부 허용
.
.
.
디버그로 순서 확인
package shop.mtcoding.bank;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
@EnableJpaAuditing // createAt, updateAt
@SpringBootApplication
public class BankApplication {
public static void main(String[] args) {
ConfigurableApplicationContext context = SpringApplication.run(BankApplication.class, args);
String[] iocNames = context.getBeanDefinitionNames(); // 스프링에 등록된 것들
for (String string : iocNames) {
System.out.println(string);
}
}
}
context에는 스프링으로 등록된 모든것들이 String[] 상태로 존재한다.
ioC에 등록된 것들 확인
포스트맨으로 확인 403이 뜨니까 시큐리티가 잘 설정이 되어있는지 알 수 있다.