본문 바로가기

개발/Network

[Network] Http CORS란?

반응형

CORS는 "Cross-Origin Resource Sharing"의 약어로, 웹 애플리케이션에서 다른 도메인에 있는 리소스에 접근하는 메커니즘을 나타냅니다. 웹 브라우저에서 동일 출처 정책(Same-Origin Policy)은 웹 페이지가 하나의 도메인에서 불러온 리소스에만 접근할 수 있도록 하는 보안 메커니즘입니다. 그러나 이 정책은 때때로 다른 도메인에서 제공되는 리소스에 접근해야 하는 상황이 발생할 수 있습니다.

 

쉽게 말하자면 허용된 클라이언트만 사용할 수 있게 해주는 것이다.

 

CORS는 이러한 제약을 완화하여, 웹 브라우저에서 다른 도메인에 있는 리소스에 안전하게 접근할 수 있도록 하는 표준 메커니즘입니다. 웹 개발자가 서버에게 어떤 도메인에서의 요청을 허용할지 명시하고, 브라우저는 이 규칙을 확인하여 안전한 요청인 경우에만 리소스에 접근을 허용합니다.

 

CORS는 HTTP 헤더를 사용하여 동작하며, 주요한 헤더들은 다음과 같습니다:

  1. Origin: 브라우저가 요청한 출처(Origin)를 서버에게 알려줍니다.
  2. Access-Control-Allow-Origin: 서버가 특정 출처(Origin)로부터의 요청을 허용할지를 명시합니다.
  3. Access-Control-Allow-Methods: 허용된 HTTP 메서드를 정의합니다.
  4. Access-Control-Allow-Headers: 허용된 HTTP 헤더를 정의합니다.
  5. Access-Control-Allow-Credentials: 요청이 인증 정보를 포함할 수 있는지를 나타냅니다.
  6. Access-Control-Expose-Headers: 브라우저가 접근할 수 있는 사용자 정의 헤더를 정의합니다.

이러한 헤더들을 사용하여 서버는 특정 출처로부터의 요청을 허용하거나 거부할 수 있으며, 브라우저는 이를 확인하여 리소스에 접근 여부를 결정합니다. CORS는 웹 애플리케이션의 보안을 강화하면서도 교차 출처 요청을 가능하게 하는 중요한 보안 기술 중 하나입니다.

반응형

'개발 > Network' 카테고리의 다른 글

[Network] 호스팅이란?  (0) 2023.12.06
[Network] SSL/TLS란?  (0) 2023.12.06
[Network] CDN이란  (0) 2023.12.06
[Network] HTTP란?  (1) 2023.11.20
[ Network ] NAS( Network Attached Storage)란?  (0) 2023.11.16