처음 접해보는 React로 블로그를 만들 계획을 세우다가, 서버사이드도 트랜디한 기술을 도입해보자는 생각으로 JWT(Json Web Token)(rfc7519)을 이용한 oAuth(RFC6749와 완전히 동일하지는 않기 때문에 oAuth라는 표현을 써도 될런지는 모르겠지만) 구현까지 해보았다.
전체 서버 흐름도는 다음과 같다.
React를 100% 사용해서 클라이언트 사이드 코드와 서버 사이드 코드를 완전히 분리했으며, 게시물이나 이미지, 댓글 등을 저장, 제공하는 RESTful API 서버를 무상태(Stateless)로 만들기 위해 인증 서버(Authorizaion Server)를 별도로 구성했다.
이렇게 해서 얻을 수 있는 것은,
사실 인증 서버를 따로 분리한 것은 커다란 시스템에서 사용하는 방식이지만 연습삼아 분리해 보았다.
나중에 다른 서비스들을 개발할때 회원 기능을 빨리 만들기 위해, 아리보리닷컴으로 로그인을 쉽게 붙힐 수 있는 개발도구도 만들었다.
AHRIBORI_AUTH_SDK: https://auth.ahribori.com/docs/