IT상식_세션(Session)

조건웅·2023년 9월 6일
0

IT상식

목록 보기
3/8

세션(Session)이란?

웹 클라이언트와 웹 서버 사이에 사용자 상태 및 정보를 유지하고 관리하는데 사용되는 관계를 의미한다.

주요 특징

주요 특징은 아래와 같다.

  • 상태 유지
  • 보안
  • 세션 식별자
  • 유효기간

세션은 웹 클라이언트와 웹 서버 간의 상태를 유지하고 사용자의 활동을 추적한다. 그리고 세션은 서버 측에 저장되고 데이터가 서버 측에 있는 세션DB에 있기 때문에 보안측면에서 유리하다.

세션 식별자, 즉 세션ID를 갖기 때문에 사용자를 고유하게 식별하고 세션 관리할 때 사용된다. 그리고 세션은 일정 기간만 유지되며 유효 기간이 지나면 자동 삭제된다.

주요 작동 원리

주요 작동 원리는 아래와 같다.

  1. 세션 시작
  2. 세션 ID 전달
  3. 서버에서 세션 관리
  4. 세션 종료

우리가 만약 어떠한 웹 사이트에 로그인을 하고 싶다. 해당 웹 사이트는 세션을 사용한다고 가정해보자.

우선 우리는 로그인을 진행하고 만약, 로그인이 성공적으로 진행된다면 서버는 사용자에게 세션 ID를 쿠키에 넣어 줄 것이다.

이러한 세션 ID를 받지 못한다면, HTTP의 주요 특징인 무상태로 인해 다른 요청에도 로그인을 해야할 것이다.

이러한 번거로움을 해결하는(위에 주요 특징인 상태 유지 특성) 방법으로 세션 ID를 받는다면, 우리는 해당 웹 사이트의 다른 페이지로 간다 해도 세션 ID를 갖고 있기 때문에 서버는 특별한 로그인 없이 사용자가 누구인지 알 수 있을 것이다.

즉, 우리가 로그인을 진행했다면 서버는 우리에게 세션 ID를 줄 것이고 이 세션ID는 세션DB에서 고유한 값이고 세션ID만 있다면 세션DB에서 정보를 찾아 건네줄 수 있다.

요약

세션은 웹 애플리케이션의 핵심 기능 중 하나이며, 사용자 경험을 개선하고 보안을 유지하는 데 필수적이다.

클라이언트와 서버 간의 상태 관리를 효율적으로 수행하고 사용자 인증, 권한 부여, 장바구니, 사용자 설정과 같은 다양한 웹 애플리케이션 요구 사항을 충족하기 위해 세션을 사용한다.

profile
내게 남은 소중한 자식은 누군지 아나? 쑨양이다!

0개의 댓글