이 글은 공부를 하면서 알게 된 내용들을 기록하는 글 입니다. 오류나 고쳐야 할 사항들이 있다면 지적 부탁드립니다!✅ 커스텀 어노테이션이 필요한 이유🔥 기존에 사용했던 방법GitGet 프로젝트에서는 소셜로그인 & JWT 발급 이후에 서비스 이용이 가능합니다.Spring security의 filterChain을 거치면서 SecurityContext에 인증된 객체 (`UserPrincipal`)에 있는 `User` 객체를 받아와 사용합니다. `@AuthenticationPrincipal` 어노테이션 덕분에 SecurityContext의 메서드를 직접 호출하지 않아도 되지만, `userPrincipal.getUser()`와 같이 중복된 코드가 발생했습니다.코드 리뷰를 받았을 때 커스텀 어노테이션을 작성하여 ..
Spring Security
이 글은 공부를 하면서 알게 된 내용들을 기록하는 글 입니다. 오류나 고쳐야 할 사항들이 있다면 지적 부탁드립니다!✅ Filter Chain이란 무엇인가?Filter chain에 대해 알아보기 전에 `Filter`에 대해 먼저 알아보자. `Filter`란 무엇인가? 기본적으로 `Filter`는 `Servlet`에서의 필터를 이야기하며, Request & Response를 처리할 때마다 실행되는 Java class이다.Request가 Client로부터 Spring Controller에 도달하기 전에 한 번Response가 Spring Controller로부터 Client에게 전달되기 전에 한 번 실행되며, 커스텀이 가능하다. Authentication(인증), Authorization(인가) 뿐만 아니라,..