저장을 습관화

230822 TIL - CORS란 본문

공부/TIL

230822 TIL - CORS란

ctrs 2023. 8. 22. 22:04

'Cross-origin resource sharing'의 줄임말로, 번역하면 교차 출처 리소스 공유라고 할 수 있다. 여기서 '교차 출처'라는 단어는 '서로 다른 출처'라는 의미를 가지고 있다. 즉, CORS는 출처가 다른 자원들을 공유한다는 개념이다.

MDN에서는 '교차 출처 리소스 공유(CORS)는 추가 HTTP 헤더를 사용하여, 한 출처에서 실행 중인 웹 애플리케이션이 다른 출처의 선책한 자원에 접근할 수 있는 권한을 부여하도록 브라우저에 알려주는 체제입니다. 웹 애플리케이션은 리소스가 자신의 출처(도메인, 프로토콜, 포트)와 다를 때 교차 출처 HTTP 요청을 실행합니다.' 라고 설명하고 있다.

출처란
https://exampleurl.com:443 이라는 URL이 있을때
프로토콜(https://), 도메인(exampleurl.com), 포트(:443)
3가지가 같다면 동일 출처라고 하며, 포트는 생략이 가능하다.
HTTP, HTTPS 프로토콜은 각각 88, 433이라는 포트로 정해져 있기 때문이다.

만약 다른 출처의 웹 서버에 아무런 제한없이 접근할 수 있다면 개인 정보 유출이나 리소스를 수정, 삭제, 훔쳐가거나 악성 스크립트를 삽입하는 등 악영향을 끼칠 수 있다.

CORS는 이러한 보안 위협을 방지하기 위한 정책이며 서로 다른 출처 간의 통신을 제어함으로 써 웹 애플리케이션의 보안을 강화한다. 

CORS는 웹 브라우저와 웹 서버 간의 통신에서 사용되며 다른 출처에 리소스에 접근하는 경우 브라우저에서 추가적인 HTTP 요청을 보내 해당 리소스에 대한 접근 권한을 확인한다. 서버는 이 요청을 처리하고, 허용되는 출처인 경우 브라우저에 허용하는 응답을 보낸다.

 

[참조]

https://developer.mozilla.org/ko/docs/Web/HTTP/CORS

 

교차 출처 리소스 공유 (CORS) - HTTP | MDN

교차 출처 리소스 공유(Cross-Origin Resource Sharing, CORS)는 추가 HTTP 헤더를 사용하여, 한 출처에서 실행 중인 웹 애플리케이션이 다른 출처의 선택한 자원에 접근할 수 있는 권한을 부여하도록 브라

developer.mozilla.org

https://evan-moon.github.io/2020/05/21/about-cors/

 

CORS는 왜 이렇게 우리를 힘들게 하는걸까?

이번 포스팅에서는 웹 개발자라면 한번쯤은 얻어맞아 봤을 법한 정책에 대한 이야기를 해보려고 한다. 사실 웹 개발을 하다보면 CORS 정책 위반으로 인해 에러가 발생하는 상황은 굉장히 흔해서

evan-moon.github.io

https://escapefromcoding.tistory.com/724

 

CORS란 무엇인가?

개요 웹 프로그래밍에서 프런트와 백엔드 작업을 하면, 한번씩 발생하는 문제가 CORS 문제입니다. 현재 하는 업무가 이런 경우는 없었지만, 개인 프로젝트 시 발생했던 문제를 기억하며 해당 문

escapefromcoding.tistory.com