목표

앞서 쿠키에 중요한 정보를 보관하는 방법은 여러가지 보안 이슈가 있었습니다.

이 문제를 해결하려면 결국 중요한 정보를 모두 서버에 저장해야 합니다.

그리고 클라이언트와 서버는 추정 불가능한 임의의 식별자 값으로 연결해야 합니다.

이렇게 서버에 중요한 정보를 보관하고 연결을 유지하는 방법을 세션이라 합니다.

세션 동작 방식

세션을 어떻게 개발할지 먼저 개념을 이해해봅시다.

로그인

Untitled

  1. ID, password를 넣습니다. 그러면 로그인할 때 폼으로 서버에 데이터가 날라옵니다.
  2. 서버에서 회원 저장소를 뒤져서 ID와 password 정보로 서버에서 해당 사용자가 맞는지 확인합니다.
  3. **‘세션 저장소’**를 서버에 관리합니다. (Map 같은 것으로 관리를 해도 됩니다.)

세션 생성

Untitled

  1. 임의의 랜덤 토큰 값을 만들어냅니다.