본문 바로가기
웹 개발

Cookie & Session

by hans-0 2025. 1. 23.

Cookie & Session

 

쿠키 개념

  • 쿠키는 사용자가 웹 서버에 접속해 로그인을 했을 때 정보를 클라이언트 컴퓨터에 저장한다.
  • 그 쿠키를 갖고 있는지 확인해 회원인지 아닌지 판단한다.
  • 쿠키는 기억하는 용량이 4KB를 넘을 수 없다.

세션 개념

  • 세션은 프로세스들 사이에 통신하기 위해 메시지 교환을통해 서로를 인식한 후 통신을 마칠 때까지의 기간을 의미한다.
  • 세션은 쿠키와 다르게 로그인 정보를 서버에 저장한다.(쿠키보다 보안을 한층 업그레이드)
  • 서버는 웹사이트를 방문하는 사용자들에게 유일한 아이디(세션 아이디)를 부여해 특정 디렉터리에 저장하고, 계속 사용할 수 있도록 해준다.

차이점

  • 쿠키는 사용자의 컴퓨터에 저장된다.
  • 사용자가 쿠키를 생성하거나 웹 서버로부터 만들어진 쿠키값을 변조하는 것이 가능
  • 세션은 서버측에 저장된다.
  • 세션 값을 변조할 수 없으므로 보안적인 측면에 쿠키보다 월등하다.

 

추가 정리

 

쿠키

저장 위치: 사용자의 브라우저(클라이언트)에 저장

역할: 웹사이트가 사용자의 정보를 기억할 수 있도록 작은 데이터를 클라이언트에 저장

예시: 로그인 상태 유지

  • 특징:
    • 사용자가 웹사이트를 방문할 때 서버가 쿠키를 생성하여 브라우저에 저장
    • 쿠키는 브라우저가 닫혀도 유효기간(expiration date)이 설정되어 있다면 저장된 상태를 유지할 수 있다.
    • 데이터 크기가 작고, 텍스트 형식으로 저장

세션

저장 위치: 서버에 저장

역할: 서버가 사용자의 상태를 관리하기 위해 정보를 저장

예시: 사용자가 로그인 후 다른 페이지로 이동해도 로그인이 유지되는 기능.

 

  • 특징:
    • 사용자가 서버에 접속하면 고유한 세션 ID가 생성
    • 세션 ID는 브라우저에 저장되고, 서버는 이를 통해 사용자를 식별
    • 브라우저를 닫으면 세션이 종료되거나, 일정 시간이 지나면 자동으로 만료(주로 보안 때문).