개발일기/CS(면접)
세션 기반 인증과 토큰 기반 인증의 차이란?
w.llama
2024. 7. 30. 21:54
세션 기반 인증과 토큰 기반 인증의 차이란?
항목 | 세션 기반 | 토큰 기반 |
인증정보 저장 위치 | 서버에 사용자의 인증 상태를 저장 | 클라이언트에 인증 정보를 저장 |
서버 부하 | 서버가 사용자의 상태를 관리하므로 서버에 부담 | 클라이언트가 토큰을 저장하고 관리하므로 서버의 부담이 줄어듬 |
확장성 | 다수의 서버를 사용할 경우 세션 동기화 작업이 필요 | 서버간 데이터 공유가 필요 없어 확장성이 높음 |
보안 | 서버에서 세션 ID를 삭제하여 안전하게 로그아웃 할 수 있음 | 토큰 탈취 시 대처가 어려울 수 있음 |
인증 프로세스 | 로그인 후 서버에서 세션을 생성하고 세션 ID를 클라이언트에 전달 | 로그인 후 서버에서 토큰을 생성하고 클라이언트에 전달 |
멀티 디바이스 | 여러 기기에서의 로그인 관리가 상대적으로 쉽다 | 각 기기마다 다른 토큰을 발급하고 관리할 수 있다 |
사용자 경험 | 서버에서 세션을 관리하므로 다양한 기능 구현이 용이 | 토큰의 유효기간 설정에 따라 사용자 경험이 달라짐 |