1.
쿠키와 세션의 차이점을 설명해 주세요.
•
쿠키: 클라이언트(브라우저)에 저장되는 작은 텍스트 파일입니다. 세션 ID를 저장해 로그인 상태를 유지할 수 있지만, 보안에 취약합니다.
•
세션: 서버에 사용자 상태 정보를 저장합니다. 클라이언트에는 세션 ID만 전달되므로 보안성이 높지만, 서버 부하가 증가할 수 있습니다.
2.
쿠키와 세션을 이용한 로그인 방식을 설명해 주세요.
a.
사용자가 아이디와 비밀번호를 입력해 로그인 요청을 보냅니다.
b.
서버는 인증 후 고유한 세션 ID를 생성해 서버 메모리나 DB에 저장합니다.
c.
응답 헤더에 Set-Cookie: sessionID=abc123을 포함해 클라이언트에게 전송합니다.
d.
클라이언트는 이후 요청마다 쿠키에 sessionID를 담아 보내고, 서버는 이를 검증해 사용자를 식별합니다.
•
보안 강화: 쿠키에는 HttpOnly, Secure 플래그를 설정해 XSS와 스니핑 공격을 방지합니다.