Post

쿠키와 세션

쿠키

쿠키(Cookie)KeyValue로 이루어진 일종의 단위로, 서버가 클라이언트에게 쿠키를 발급하면, 클라이언트는 서버에 요청을 보낼 때마다 쿠키를 같이 전송한다. 서버는 쿠키를 확인해 클라이언트를 구분할 수 있다. HTTP 프로토콜의 비연결성무상태 특징 때문에 웹 서버는 클라이언트를 기억할 수 없다. HTTP에서 상태를 유지하기 위해 쿠키가 탄생했다.

세션

세션(Session)은 인증 정보를 서버에 저장하고 해당 데이터에 접근할 수 있는 키를 만들어 클라이언트에 전달하는 방식으로 작동한다. 브라우저는 해당 키를 쿠키에 저장하고 이후에 HTTP 요청을 보낼 때 사용한다. 서버는 요청에 포함된 키에 해당하는 데이터를 가져와 인증상태를 확인한다. 클라이언트가 인증 정보를 변조할 수 없게 하기 위해 세션을 사용한다.

SOP

SOP(Same Origin Policy)는 동일 출처 정책이다. 브라우저는 쿠키를 브라우저 내부에 보관하는데, 브라우저는 타 서비스에 접근할 때 쿠키를 함께 전송하는 특징을 갖고 있다. 이 특징 때문에 악의적인 페이지에서 읽을 수 없도록 하기 위한 것이 브라우저 보안 메커니즘인 동일 출처 정책이다.

CORS

CORS(Cross Origin Resource Sharing)는 교차 출처 리소스 공유로, HTTP 헤더에 기반하여 Cross Origin 간에 리소스를 공유하는 방법이다. 발신측에서 CORS 헤더를 설정해 요청하면, 수신측에서 헤더를 구분해 정해진 규칙에 맞게 데이터를 가져갈 수 있도록 설정한다.

This post is licensed under CC BY 4.0 by the author.