ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 인증 방식 (세션, 토큰)
    JavaScript 2023. 4. 4. 02:33

    세션

    • 전통적인 방식으로 쿠키를 사용한다.
    • 사용자가 서버에 로그인 요청을 보내면, 서버는 세션에 저장하고 브라우저에 세션ID를 보낸다.
    • 브라우저는 세션ID를 쿠키에 저장하고, 브라우저는 서버에 요청 보낼때마다 쿠키를 함께 보낸다.
    • 서버는 쿠키에 있는 세션ID가 서버에 저정되어 있다면 응답 보내준다.

     

    토큰

    • 세션 방식은 서버에서 데이터를 저장하기 때문에 동시접속자가 많으면 관리 어렵다. 이러한 문제 해결하는 것이 토큰 방식.
    • 대표적으로 JWT(JSON Web Tokens)가 있다.
    • 사용자가 로그인 요청을 보내면 서버는 JWT를 브라우저에 보낸다. JWT는 Header, Payload, Signature로 구성된다.
    • 브라우저는 JWT를 LocalStorage에 저장하고, 사용자가 요청을 보낼 때마다 Header에 JWT부착해 서버에 보낸다.
    • 서버는 JWT의 Signature를 확인해 맞다면 응답을 보낸다.

     


     

    JWT방식(Json Web Token)

    • Json포맷을 이용해 사용자에 대한 속성을 저장하는 claim 기반의 web token.
    • 토큰 자체를 정보로 사용하는 Self-contained 방식으로, 정보 안전하게 전달.
    • 별도의 브라우저 저장소에 저장하지 않고, JWT 발급하고 검증하면 된다.
    • 확장성이 뛰어나다
    • Payload 정보가 제한적
    • JWT길이가 길다
    • 사용 예 : 회원 인증, 정보 전달

    'JavaScript' 카테고리의 다른 글

    new  (0) 2023.04.04
    프로토타입 (Prototype)  (0) 2023.04.04
    스코프  (0) 2023.04.04
    실행 컨텍스트(Execution Context)  (0) 2023.04.04
    이벤트 Event (이벤트 버블링, 이벤트 캡쳐링, 이벤트 위임)  (0) 2023.04.03

    댓글

heeezzang Tistory.