2023년 1월 1일
08:00 AM
Buffering ...

최근 글 👑

[백엔드] 기술 면접 Top30 - #8 쿠키와 세션의 개념과 차이점

2023. 9. 12. 10:09ㆍ[백엔드] 기술면접
반응형

쿠키와 세션

 

 

쿠키와 세션

쿠키와 세션 모두 웹 개발에서 사용되는 두 가지 중요한 개념입니다.

사용자 식별 및 상태 관리를 위해 사용되며, 이 둘은 서로 다른 방식으로 작동하여 특정 상황에 맞게 선택 되어야 합니다.

 

쿠키( Cookie )

  • 쿠키는 클라이언트 측에 저장되는 작은 데이터 조각입니다.
  • 서버에서 클라이언트로 전송되어 클라이언트 측에서 저장되며, 이후에 해당 웹사이트를 방문할 때마다 다시 서버로 전송됩니다.
  • 주로 사용자 식별, 로그인 정보 유지, 사용자 설정 저장 등과 같은 목적으로 사용됩니다.
  • 쿠키는 클라이언트에 의해 관리되므로, 서버와 클라이언트 간의 통신 비용을 줄일 수 있습니다.
  • 쿠키에는 유효 기간이 있어 만료일까지 저장됩니다.

세션 ( Session )

세션은 서버 측에서 관리되는 데이터 저장 방식입니다.

  • 클라이언트가 서버에 최초로 요청을 보낼 때 서버는 고유한 세션 식별자(주로 세션, 쿠키를 통해)를 생성하고 해당 식별자를 사용하여 클라이언트의 상태 정보를 저장합니다.
  • 주로 로그인 상태, 장바구니 내용 등의 정보를 저장하며, 클라이언트는 세션 식별자를 쿠키 등을 통해 서버에 제공하여 세션을 식별합니다.
  • 세션은 보안적으로 더 안전하며, 클라이언트에게 저장되는 데이터 양이 작아서 보안 이슈를 줄일 수 있습니다.
  • 서버 측에서 설정한 만료 시간에 따라 유지되며, 클라이언트가 웹 브라우저를 닫거나 로그아웃하면 종료됩니다.

쿠키와 세션의 차이점

  • 쿠키는 클라이언트 측에 저장, 세션은 서버 측에 저장됩니다.
  • 쿠키는 클라이언트와 서버 간의 통신 비용을 줄이지만, 보안상의 위험이 있을 수 있습니다.
  • 세션은 보안적으로 더 강력하며, 서버 측에서 데이터를 관리하므로 클라이언트에 저장되는 데이터 양이 적습니다.
  • 쿠키는 만료 날짜가 설정되어 유지되지만, 세션은 클라이언트가 웹 브라우저를 닫거나 로그아웃할 때 종료됩니다.

 

요약

쿠키는 클라이언트 측에 저장되고, 세션은 서버 측에 저장됩니다.
쿠키는 클라이언트와 서버 간의 통신 비용을 줄이지만, 보안 이슈가 있을 수 있습니다.
세션은 보안적으로 더 강력하며, 클라이언트에 저장되는 데이터 양이 적습니다.
쿠키는 만료 날짜가 설정되어 유지되지만, 세션은 클라이언트가 웹 브라우저를 닫거나 로그아웃할 때 종료됩니다.

 

반응형