authentication

    쉽게 알아보는 서버 인증 2편(Access Token + Refresh Token)

    안녕하세요! 이전 포스팅에는 크게 세션/쿠키 인증, 토큰 기반 인증(대표적으로 JWT)에 대하여 알아보았습니다. 저희가 앱, 웹 혹은 서버 개발을 하면서 꼭 사용하게 되는 인증(Authorization)은 아주 중요합니다. 만일 설계를 잘못했을 시, 회원들의 정보 유출이 일어날 수도 있으니까요. 이번 포스팅에서는 기본 JWT 방식의 강화버전인 Access Token & Refresh Token 방식에 대해 알아보겠습니다. Refresh Token? Access Token(JWT)를 통한 인증 방식의 문제는 만일 제 3자에게 탈취당할 경우 보안에 취약하다는 점입니다. 유효기간이 짧은 Token의 경우 그만큼 사용자는 로그인을 자주 해서 새롭게 Token을 발급받아야 하므로 불편합니다. 그러나 유효기간을 늘..

    쉽게 알아보는 서버 인증 1편(세션/쿠키 , JWT)

    앱 개발을 처음 배우게 됐을 때, 각종 화면을 디자인해보면서 프론트엔드 개발에 큰 흥미가 생겼습니다. 한때 프론트엔드 개발자를 꿈꾸기도 했었죠(현실은 ...) 그러나 서버와 통신을 처음 배웠을 때 마냥 쉬운 일은 아니구나라고 생각했습니다. 항상 당연하게 생각해왔던 기능(데이터를 보내고 받는 작업)들을 직접 구현하려고 하니 헷갈리는게 한둘이 아니더군요. 그 중에서 초창기에 가장 어려움을 겪었던 부분은 바로 ‘인증’ 부분이었습니다. 인증이 필요한 이유 인증은 프론트엔드 관점에서 봤을 때 사용자의 로그인, 회원가입과 같이 사용자의 도입부분을 가리키곤 합니다. 반면 서버사이드 관점에서 봤을 때는 모든 API 요청에 대해 사용자를 확인하는 작업입니다. 사용자 A와 사용자 B가 앱을 사용한다고 가정하겠습니다. 두 ..