인증이 왜 필요한가?

HTTP 프로토콜은 비연결성(Connectionless), 무상태성(Stateless) 프로토콜입니다.

서버가 클라이언트를 식별하기 위해서는 인증 절차가 필요합니다. 하지만 클라이언트가 로그인을 하더라도 다음 요청 시 클라이언트의 인증 정보를 기억하지 못한다면 인증 절차가 중복되는 문제가 발생하게 됩니다.

그래서 쿠키, 세션 또는 토큰으로 사용자 인증 정보를 유지하여 해결할 수 있습니다.

인증 방식

쿠키

클라이언트가 어떠한 웹사이트를 방문할 경우, 그 사이트가 사용하고 있는 서버를 통해 클라이언트의 브라우저에 저장되는 key-value 형태의 문자열입니다.

<aside> ⭐

</aside>

Untitled

  1. 웹 브라우저가 서버에게 request를 보낸다.
  2. 서버는 상태 유지를 하려는 쿠키로 생성하고, 이를 response의 HTTP Header (Set-Cookie)에 포함하여 전송한다.
  3. 웹 브라우저는 전달받은 쿠키를 받아 저장하고, 다음 request를 전송할 때 HTTP Header(Cookie)에 담아서 전송한다.