세션 vs 쿠키

변시윤·2023년 3월 27일
0

CS

목록 보기
3/4

세션(session)

서버 측에 사용자별 데이터를 저장하고 관리하는 방법으로 사용자별 정보를 추적하고 각 사용자에게 로그인 정보, 사용자 기본 설정, 쇼핑 카트 내 품목과 같은 맞춤형 경험을 제공하기 위해 웹 개발에서 자주 사용한다. 클라이언트 측이 아닌 서버 측에 정보를 저장하므로 보안면에서도 유리하다.

세션은 일반적으로 사용자가 웹 애플리케이션에 처음 접근할 때 시작되며 해당 사용자에 대한 고유한 세션 ID가 생성된다. 이 ID는 이후의 각 요청과 함께 클라이언트 측의 쿠키에 저장되어 서버에 다시 보내진다. 이후 서버는 이 세션 ID를 사용하여 해당 세션 데이터를 검색하고 상태를 유지한다.


쿠키(Cookie)

클라이언트(브라우저) 측에 사용자별 데이터를 저장하고 관리하는 방법으로 요청과 함께 서버로 전송된다. 세션과 마찬가지로 로그인 정보, 사용자 기본 설정, 쇼핑 카트 내 품목과 같은 사용자 세션을 유지한다. 이 외에도 개인 맞춤형 콘텐츠 및 광고, 사용자 동작 추적 등 다양한 목적으로 활용된다. 사용자의 브라우저에 특정 시간 동안만 저장되고 그 이후에는 만료된다.

단, 사용자 동작 추적과 민감한 개인 정보 저장시 악용될 수 여지가 있으므로 쿠키를 비활성해서 개인 정보를 보호하는 편이 좋다. Set-Cookie HTTP 헤더를 사용하여 서버 측에서 설정하거나 JavaScript 또는 기타 클라이언트 측 스크립팅 언어를 사용하여 클라이언트 측에서 액세스 할 수 있다.

  • 세션 쿠키(session cookie)
    사용자가 브라우저를 닫을 때 삭제되는 일시적인 쿠키

  • 지속 쿠키(persistent cookie)
    사용자의 컴퓨터에 저장되어 만료되거나 수동으로 삭제될 때까지 유지


세션 vs 쿠키

공통점

  • 사용자별 데이터를 저장하고 관리
  • 로그인 정보, 사용자 기본 설정, 쇼핑 카트 내 품목과 같은 사용자 관련 정보를 유지
  • 주로 웹 개발시 사용

차이점

-세션쿠키
저장 위치서버클라이언트
보안성highlow
용량 제한없음4KB
만료 시점브라우저가 종료되거나 클라이언트로부터 일정 기간동안 요청이 없을 시 자동으로 만료만료 기간을 설정하여 해당 기간동안 유지
profile
개그우먼(개발을 그은성으로 하는 우먼)

0개의 댓글