오늘은 캡스톤 디자인에서 개발하고 있는 moim-today에서 선택한 로그인 방식과 그 이유에 대해서 알아보겠습니다.

1. 로그인이 필요한 이유가 뭘까?

HTTP는 기본적으로 “Stateless”한 성격을 가지고 있습니다. 즉, 무상태입니다.

서버는 클라이언트가 이전에 요청한 결과에 대해 잊어버리게 됩니다.

클라이언트: 나는 "김모임"이야.
서버: 네.

클라이언트: 나의 프로필 정보를 보고싶어.
서버: "나"가 누구인가요?

이렇게 이전의 내용을 기억하지 못합니다.

당연하듯이, 웹 사이트를 이용하는데 매 요청마다 로그인을 수행한다는 것은 매우 좋지 않은 사용자 경험을 제공할 것입니다.

따라서, 서버는 한번 로그인한 사용자를 기억해야할 필요가 있습니다.

이를 위해 로그인 방식이 필요해지게 됩니다.


2. 로그인 방식에는 어떤 것들이 있을까?

  1. 쿠키(stateless) : 서버에 인증 정보를 저장하지 않으므로 stateless
  2. 세션(stateful) : 서버에 인증 정보를 저장하므로 stateful
  3. 토큰(stateless) : 서버에 인증 정보를 저장하지 않으므로 stateless
  4. 소셜 로그인(OAuth)