Session Based
title: 2025-10-04 author: 강병호 date:2025-10-04 category: TIL/강병호/2025/10 (파일 경로 : TIL/{이름}/{연}/{월}) layout: post (자유) —
세션 기반 인증 과정 (Session-based Authentication Process)
- [Client → Server] 로그인 정보 전송: 사용자가 아이디, 비밀번호 등의 인증 정보(Credentials)를 HTTP 요청에 담아 서버로 전송합니다.
- [Server] 인증 정보 검증: 서버는 전달받은 정보를 데이터베이스의 사용자 정보와 비교하여 유효성을 검증합니다.
- [Server] 세션 생성 및 저장: 검증 성공 시, 서버는 해당 사용자를 위한 고유한
세션 ID를 생성합니다. 이후 생성된세션 ID를 Key로, 사용자 정보(로그인 상태 등)를 Value로 하여 서버의 세션 저장소(메모리, DB 등)에 저장합니다. - [Server → Client] 세션 ID 전송: 서버는 HTTP 응답의
Set-Cookie헤더에 생성된세션 ID를 담아 클라이언트로 전송합니다. - [Client] 세션 ID (쿠키) 저장: 클라이언트(브라우저)는 응답으로 받은
세션 ID를 쿠키 저장소에 보관합니다. - [Client → Server] 후속 요청: 이후 클라이언트는 동일한 서버에 요청을 보낼 때마다 저장된
세션 ID쿠키를 HTTP 요청 헤더에 자동으로 포함하여 전송합니다. - [Server] 세션 ID 검증 및 상태 유지: 서버는 요청에 포함된
세션 ID를 통해 세션 저장소를 조회하여, 해당 사용자가 인증된 상태임을 확인하고 요청을 처리합니다. 이로써 사용자는 로그인 상태를 유지할 수 있습니다.