첫번째 Keyword
기존에 로그인 / 회원가입을 진행할 때는 Spring 프레임워크에서 session 기반과 security library로 진행을 했었다.
JWT는 API를 적용할 때 잠!깐! 봤던적은 있지만 정확히 어떤 장단점이 있는지는 정리를 해본적이 없다. token으로 사용자들의 인증 작업을 처리하는 것이 보안성 부분에서 주요한 이슈이고 좋은 방법인 것 같다.
JWT(Json Web Token) : Json 포맷을 이용하여 사용자에 대한 속성을 저장하는 Claim(정보의 부분) 기반의 Web Token이다.
- JWT는 Header, Payload, Signature의 3 부분으로 이루어지며, Json 형태인 각 부분은 Base64로 인코딩 되어 표현된다.
JWT 장점 : 세션 저장소와 같이 별도의 인증 저장소가 필수 필요 요소는 아니다.(stateless)
/ 세션과는 달리, 클라이언트의 상태를 서버가 저장하지 않아도 된다.
/ 보안성이 더 높다.
JWT 한계 : base64 인코딩을 통해 정보를 전달하므로 많은 데이터양의 문제점이 있다.
/ payload는 암호화가 적용된 것이 아니므로, 누구나 디코딩을 통해 정보를 확인할 수 있다. 따라서 민감한 정보를 저장할 수는 없다.
/ 토큰이 유출되는 날에는........
한마디로 API(Application Programming Interface)란, 프로그램들이 서로 상호작용(데이터를 주고 받는)하는 것을 도와주는 매개체라고 할 수 있다. 인터페이스는 어떤 기계 장치끼리 정보를 교환하기 위한 수단이나, 방법이다.
첫번째 회고
< WIL >
< 느낀점 >