오늘의 공부 👍
오늘은 수업때 다뤘던 JWT에 대해서 자세히 알아보겠습니다
📝 토큰 기반 인증 시스템( JWT ) 원리
- 유저가 아이디와 비밀번호로 로그인을 한다.
- 서버에서 해당 계정 정보가 있는지 확인한다.
- 계정 정보가 있다면, 서버에서 유저에서 토큰(accesstoken )을 발급해 준다.
- 클라이언트에서 토큰을 저장하고, 서버에 요청할 때마다 요청과 함께 토큰을 함께 전달한다.
- 서버는 토큰이 맞는지 확인하고, 요청에 응답한다.
▷ JSON Web Token
누구든지 열어볼 수 있기에 많은 데이터를 저장하지 않는 게 좋습니다.
- .으로 구분되는 Header, Payload, Signature의 3가지 문자열로 되어있다.
- 헤더 ( Header )
- 토큰의 타입과 해싱 알고리즘이라는 두 가지 정보를 담고 있다.
- 내용 ( Payload )
- 토큰에 담을 정보가 들어간다.
- 담는 정보의 한 조각은 name/value의 한 쌍으로 이루어진 Claim이라고 부른다.
- 서명 ( Signature )
- Header의 인코딩 값과 Payload의 인코딩 값을 합친 후 주어진 비밀키로 해싱(hashing)하여 생성한다.
출처 및 참고
코드캠프