본문 바로가기
Product 💙/기획자의 지식

쿠키, 세션, 캐시, 토큰, 웹스토리지(로컬, 세션) 😵‍💫

by 김찬란_ 2024. 8. 7.

쿠키, 세션, 로컬스토리지 모두 key-data 저장소

데이터 저장 기한이 다르다.

 

웹 스토리지는 브라우저에서 데이터를 클라이언트 측에 저장하는 기술.

 

로컬 스토리지 : 웹 페이지의 데이터 저장의 영구성 보장 (자동 로그인)

브라우저 종료, 재부팅에도 유지되며 로컬 스토리지에 저장된 데이터는 도메인 별로 구분되고 자바스크립트로 통해 접근할 수 있다.

 

세션 : 웹 브라우저나 탭ㅇ 꺼지면 사라지는 데이터 (은행 로그인, 비로그인 장바구니)

서버측에서 사용자의 상태를 관리한다. 클라이언트가 서버에 접속하면 서버는 클라이언트에게 고유 ID를 부여하고

해당 클라이언트의 데이터를 서버에서 관리한다. 주로 사용자 인증정보를 저장하거나 클라이언트의 상태를 유지하기 위해 사용한다.

서버에 데이터가 저장되므로 보안에 좋지만 데이터가 많아지면 과부화가 올 수 있다.

사용자의 상태가 서버에서 관리되면 동일브라우저라도 탭 간 데이터 공유가 어렵다.

 

쿠키 : 웹 브라우저에 저장되는 작은 조각 데이터.

서버는 클라이언트에 쿠키를 전달하여 클라이언트에 저장하고,

이후 도메인 방문마다 브라우저가 해당 쿠키를 서버로 전송하며 인증한다.

클라이언트에 저장되어 서버가 읽을 수 있다.

만료기간 설정을 통해 일시적 데이터나 지속적 데이터를 관리할 수 있다.

도메인 별로 쿠키를 구분하여 사용할 수 있다.

보안 위험성이 있어 중요정보를 저장하기에는 적합하지 않다. 

 

토큰

정보를 나타내는 작은 조각. 보통 문자열 형태로 표현된다.

사용자 인증 방식 중 일반적으로 JSON Web Token(JWT)방식을 사용.

 

 

 

참고

 

블로그 - 토큰, 쿠키, 세션, 웹스토리지란?

[데이터를 저장하는 방법] 쿠키/세션/토큰/캐시/CDN