CORS?

  • SOP 를우회하기 위한 방법!
  • 그러면 SOP 는뭘까?
    • Single-Origin Policy 의 약자로 같은 Origin 에만 요청을 보낼 수 있는 규칙입니다.
    • 즉, 같은 도메인에 해당하는 서버에만 요청이 가능하단 뜻입니다.
  • 그럼 CORS는...?
    • CORSCross-Origin Resource Sharing 의 약자로 서로 다른 Origin 끼리 자원을 공유할 수 있는 방법입니다.
    • 그러니깐 본인 도메인 이외에 다른 URL에 요청할 수 있게끔 하는 방법입니다.
  • Origin 단어가 많이 보이는데 Origin 은 다음과 같습니다.
    • URI 스키마(http, https...)
    • hostname (naver.com, localhost...)
    • 포트(8080,3000...)

스프링에서 사용 방법

@Configuration
public class WebConfig implements WebMvcConfigurer {

  @Override
  pulbic void addCorsMappings(CorsRegistry registry) {
    registry.addMapping("/**")
      .allowedOrigins("https://허용할 도메인");
  }
}