CORS

HEUKWU·2023년 2월 26일
2

SOP

SOP(Same-Origin Policy)
CORS를 알아보기 전에 먼저 SOP에 대해서 알아야한다고 생각한다. SOP는 웹페이지가 다른 도메인의 리소스(쿠키, 로컬 저장소, 기타 민감 데이터 등)에 엑세스하지 못하도록 막고 동일 출처에 대해서만 접근이 가능하도록 하는 정책이다.

CORS

CORS란 Cross-Origin Resource Sharing으로 웹페이지상에서 자바스크립트를 이용하여 자원을 공유히야 하는 브라우저와 서버 간의 안전한 교차 출처 요청 및 데이터 전송을 지원한다.

따라서 CORS를 사용하면 SOP로 인한 문제를 해결할 수 있다.

그렇다면 같은 출처 다른 출처를 어떻게 판단할 수 있을까? URL은 protocol, host, path 등으로 이루어져 있는데, 해당 구성 요소 중 출처는 protocol과 host, 포트번호를 모두 합친 것을 의미한다.

이제 CORS의 작동 과정을 간단하게 살펴보겠다.

브라우저는 서버에 요청을 보낼때 한번에 바로 보내지 않고 먼저 예비 요청을 보낸다.

예비 요청은 안전한 요청인지 브라우저가 확인하는 과정이다. 이를 preflight이라 한다.

서버는 예비 요청을 받아 응답으로 허용하는 것과 금지하고 있는 정보를 헤더에 담아 브라우저로 보내준다.

이후 브라우저는 예비 요청과 서버의 응답을 비교하여 해당 요청이 안전한지 확인한 후 최종적으로 보내게 된다.

서버가 최종요청에 대한 응답데이터를 브라우저로 보내준다.

1개의 댓글

comment-user-thumbnail
2023년 2월 26일

😎

답글 달기

관련 채용 정보