03 · CHAPTER 04 · WEB STRUCTURE

쿠키가 기억하는
대화

상태가 없는 HTTP 위에서 쿠키와 세션이 로그인을 유지하는 원리를 이해합니다.

읽는 시간 약 15분Cookie · Session · Authentication2026. 08. 02
WEB STRUCTURE STUDY NOTE쿠키가 기억하는 대화Cookie · Session · Authentication

01

매번 처음 만나는 사람을 기억하려면

핵심 용어
Cookie Session Authentication

HTTP는 기본적으로 이전 요청을 기억하지 않으므로 별도의 표식이 필요합니다.

서버는 로그인 후 세션을 만들고 브라우저에 세션 식별자를 쿠키로 보냅니다.

브라우저는 다음 요청에 쿠키를 함께 보내고 서버는 세션 저장소에서 사용자 상태를 찾습니다.

02

쿠키를 지키는 속성

핵심 개념
HttpOnly Secure SameSite Path Expires

쿠키의 범위와 전송 조건을 좁힙니다.

HttpOnlyJavaScript의 쿠키 접근 제한
SecureHTTPS 연결에서만 전송
SameSite다른 사이트에서의 전송 제한
Path쿠키가 적용될 경로
Expires유효 기간

03

브라우저와 응답 헤더 확인

관련 명령어
curl -I http://127.0.0.1/login curl -c cookies.txt -b cookies.txt http://127.0.0.1/profile

개발자 도구에서 Set-Cookie와 후속 요청의 Cookie 헤더를 비교합니다.

직접 확인해 보기
$ curl -I http://127.0.0.1/login $ curl -c cookies.txt -b cookies.txt http://127.0.0.1/profile

04

로그인 뒤에는 세션을 바꾸기

보안 관점
위험 요소 확인 기준 대응 원칙

인증 성공 시 세션 ID를 재발급하고 로그아웃과 비밀번호 변경 때 기존 세션을 폐기합니다.

세션 파일과 DB 세션 테이블은 웹에서 직접 접근할 수 없어야 하며, 실패 횟수와 잠금, 최근 로그인도 감사 로그로 남깁니다.

쿠키는 비밀번호를 저장하는 종이가 아니라 서버의 세션을 찾기 위한 표식으로 다루자.

CHAPTER REVIEW

이번 장에서 기억할 한 문장

세션은 사용자를 기억하게 해 주지만 세션 식별자가 노출되면 로그인한 사용자처럼 보일 수 있다.