[회고] 코드숨 스프링 12기 6주차

개발자 춘식이·2022년 12월 18일
0

CodeSoom

목록 보기
6/8
post-thumbnail

6주 차 회고록

6주 차에는 말로만 듣던 JWT를 배우고 사용해보았다.


6주 차 Keyword

  • JWT : JWT는 JSON Web Token의 약어로, JSON object들을 HTTP Authorization header나 URI 쿼리 파라미터를 통해 전송 가능한 base64로 인코딩된 토큰을 말한다. JWT는 header.payload.signature 3개의 파트로 나뉘는데, header는 토큰의 타입(JWT)과 알고리즘을 포함한다. payload는 claims을 포함하는데 claim이란 JWT에 담을 데이터를 뜻한다. 마지막으로 signature는 header+payload를 서명한 값이다.
  • Authentication(인증) : Authentication은 '인증(認證)'을 뜻한다. 로그인을 생각하면 되는데, '유효한 사용자인지 인증'한다고 생각하면 된다.
  • Authorization(인가) : Authorization은 '인가(認可)'를 뜻한다. 인가는 '권한'을 생각하면 된다. 통상 사용자의 권한과 관리자의 권한이 다르기 때문에 어떠한 서비스에 접근할 때 인가를 통해 현재 사용자가 어떠한 권한을 갖고있는지 파악한다. JWT가 Authorization을 돕는 역할을 한다.
  • Filter
  • Interceptor

코드 리뷰 코멘트

📌 시간을 나타내는 변수에는 단위를 붙여주는 것이 좋다. VALIDITY_PERIOD -> VALIDITY_PERIOD_MS

📌 자바에서는 예외를 그대로 던지고 필요한 곳에서 적절히 처리하자는 식이 많다.


마무리

JWT를 사용해볼 수 있어서 좋았지만 Session을 사용했을 때와의 차이점을 조금 더 찾아봐야할 것 같다.

profile
춘식이를 너무 좋아하는 주니어 백엔드 개발자입니다.

0개의 댓글