Spring Boot Profile
·
⚙️ BE
환경 분리 Node에서 환경변수 관련해서 개발 환경별로 구분하고 싶을 때, env.prod, env.dev 형태로 나눴던 기억이 있습니다. Spring Boot 에서도 이와 비슷하게 환경을 분리 할 수 있습니다. 우선 dev 환경과 prod 환경을 나누기 위해 application.yaml 파일을 분리했습니다. .example이 붙은 파일은 github에 올라가고, 어떤 값이 필요한지 가이드 하는 역할입니다. application-dev, application-prod는 git ignore에 써두어서 업로드 되지 않도록 합니다. 각파일에는 아래 예시와 같이 on-profile: dev 형태로 환경의 이름을 씁니다. spring: config: activate: on-profile: dev 실행 설정 ID..
Spring Security + JWT
·
⚙️ BE
Security와 JWT를 연동하고, Global Exception을 처리하며 학습했던 내용을 정리한 글입니다. Spring Security Spring Security는 Spring 기반의 애플리케이션의 보안(인증과 권한, 인가 등)을 담당하는 스프링 하위 프레임워크입니다. '인증'과 '권한'을 Filter 라는 것으로 처리합니다. 단어의 뜻 그대로 필터링 한다고 생각하면 좋을 것 같습니다. Security with JWT Spring Security 에서는 Session 방식 뿐만 아니라 JWT도 지원합니다. 기존 5.7 미만 버전에서는 WebSecurityConfigurerAdapter 를 상속받아서 사용했는데 deprecated 되었습니다. 이후 버전 부터는 아래 방식 처럼 사용합니다. @Conf..