CORS

이샘미·2022년 6월 22일
0

sulmyoung

목록 보기
21/37

CORS문제 발생했을 시

CORS (교차 출처(=다른 출처) 리스스 공유 / Cross-Origin Resource Sharing) 란?

추가 HTTP 헤더를 사용하여, 한 출처에서 실행 중인 웹 애플리케이션이 다른 출처의 선택한 자원에 접근할 수 있는 권한을 부여하도록 브라우저에 알려주는 체제
예를들어 cross origin요청을 하려면 서버의 동의가 필요함.
만약 브라우저에서 동의를 하면 요청을 허락하고 동의하지 않으면 거절하게 되는데, 이 허락과 거절을하는 것이 CORS이다.
*허락을 구하고 거절하는 메커니즘을 HTTP-header를 이용함. 이를 CORS라고 부름

출처 비교 :

scheme, host, port가 동일하면 같은 출처로 간주함
ex) http://alicelee.github.io/about = http://alicelee.github.io
위의 주소가 스킴, 호스트, 포트가 동일하여 같은 출처로 간주함

CORS가 필요한 이유?

만약 해당 기능이 없으면 마음대로 다른 사이트를 흉내낼 수 있게 됨.
예로 악의적으로 다른 출처의 리소스를 불러와 정식 사이트와 동일하게 만들어 놓고, 사용자들이 로그인하게 된다면, 그 과정 속에서 개인 정보를 빼낼 수 있게 된다.
이를 방지하고자 CORS가 브라우저와 서버 간의 안전한 교차 출처 요청 및 데이터 전송을 지원함.

CORS 진행 방식

출처:
https://inpa.tistory.com/entry/WEB-%F0%9F%93%9A-CORS-%F0%9F%92%AF-%EC%A0%95%EB%A6%AC-%ED%95%B4%EA%B2%B0-%EB%B0%A9%EB%B2%95-%F0%9F%91%8F
https://hannut91.github.io/blogs/infra/cors

profile
가즈아

0개의 댓글