이전 글에서는 SecurityConfig 구성과 OAuth Login으로 받아온 유저 정보 처리 방법을 알아봤다 이번 글에서는 Security 설정 중 JWT와 관련된 부분을 알아보고 로그인 이후의 흐름을 살펴보자 JWT 설정은 내용이 많지는 않지만 따로 클래스로 빼내 구성하고 있다 현재 프로젝트에서는 OAuth2 로그인 시에는 구글에서 발급해준 ID & Access Token을 그대로 이용하고 애플리케이션 자체 로그인 시에는 직접 발급한 ECC 알고리즘 기반 ID & Access Token을 이용한다 일반적으로 Access & Refresh Token으로 묶겠지만 로그인, 토큰 발급 과정의 개념적인 통일을 위해 살짝 번거롭더라도 ID 토큰으로 사용자의 정보를 파싱 한다, 따라서 ID Token이 JWT..
스프링 부트 프로젝트에 OAuth2를 적용하는 것 자체는 쉽다 그러나 한발 더 나아가 흐름을 이해하고 어떻게 동작하는지 알아보려면 그다지 쉽지 않을 것이다 본 글은 OAuth2에 대한 이해를 도와줄 수는 있으나 친절한 설명이 될 것 같진 않다 스텝 바이 스텝으로 따라오게 만들 정도의 글 솜씨가 아니라 그렇다 내가 이해한 바를 바탕으로 어떻게 적용했는지를 보여줄 것이다 OAuth2 입문자에겐 매우 불친절한 자료가 될 예정이고 예제를 따라 적용을 해본 사람에겐 도움이 될 수 있을 것이다 글 하단에 참고 블로그를 첨부했다, 난 저 자료들 외에도 수 많은 자료들을 참고했는데 제일 잘 정리된 글들만 추렸다 개념 정리는 이해하는게 제일 중요하니 원서보다 한글로 된 자료를 보는 것을 추천한다 영어가 된다면 공식 문서..
약 3개월 간 OAuth2 연동 프로젝트를 진행하고 마무리 단계에 들어 그동안의 작업을 정리할 겸 남긴다 angular git convention을 따랐고 병합 전략은 squash-and-merge로 하여 연관된 작업을 한눈에 보기 쉽게 정리했다 아래는 깃 컨벤션을 참고했던 블로그다 [Git] 커밋 메시지 규약 정리 (the AngularJS commit conventions) the AngularJS commit conventions를 번역한 것입니다. 공부하면서 번역했습니다. 입맛대로 번역된 부분이나 오역이 있을 수 있습니다. velog.io angular convention을 따를 때 인텔리제이에서 사용할 수 있는 꿀 플러그인이 있다 인텔리제이 2022.01 버전에서도 사용 가능하므로 사용을 추천한..
Spring Security를 이용하다 보면 자동화된 설정이 많아 정말 편리하지만 그럼에도 불구하고 커스텀 설정을 추가해야 하는 경우가 많다 이 글에서는 그중에서 OAuth2 Config에 관해 헤맸던 부분을 다시 정리해보려 한다 프로젝트가 크지 않다면 모든 보안 설정을 SecurityConfig 하나에 모아두는 선택은 나쁘지 않다 나는 Spring Security 공부를 하며 이것저것 시도해보느라 설정이 많아졌고 자연스레 그 설정에서 사용하는 Custom Bean들도 많아서 SecurityConfig에 다 때려박으면 스크롤이 길어져 가독성이 좋지 못하고 남들이 보기에 깔끔하지 못한 코드가 될 수 있을 것 같아 분리했다 나의 경우엔 아래와 같이 설정을 나눠놨다 최대한 세분화하여 나눴고 MethodSecu..