BackEnd/Spring 2

[Spring] Spring Security + JWT 구현하기

RESTful API와 같이 상태를 유지하지 않는 아키텍처에서 클라이언트와 서버 간의 인증 상태를 효율적으로 관리하는 것이 매우 중요합니다.이때 널리 사용되는 인증 방식 중 하나가 JWT입니다.JWT는 가볍고 자체적으로 필요한 정보를 포함하고 있어, 세션 관리가 필요 없는 환경에서 유리합니다.이를 통해 인증 상태를 클라이언트가 보관하고, 서버는 각 요청에서 JWT를 검증하여 인증을 처리할 수 있습니다.이번 글에서는 Spring Security와 JWT를 활용하여 인증 시스템을 구축하는 방법을 정리해보겠습니다.1. JWT란?JWT (JSON Web Token)는 JSON 기반의 토큰으로, 클라이언트와 서버 간에 인증 및 정보 교환에 사용됩니다.JWT는 다음과 같은 특징을 가지고 있습니다:세션을 사용하지 않..

BackEnd/Spring 2024.12.21

[Spring] 스프링 의존성 주입 Dependency Injection 총정리

의존성 주입이란? 프로그램 디자인이 결합도를 느슨하게 되도록하고 의존관계 역전 원칙과 단일 책임 원칙을 따르도록 클라이언트의 생성에 대한 의존성을 클라이언트의 행위로부터 분리하는 것- 위키 백과 즉, 다른 클래스의 기능을 사용하기 위해 생성자를 직접 호출하는 대신컨테이너를 통해 연관 관계를 규정하여 결합을 약하게 하는 것!클래스들 간의 연관 관계를 갖지 않도록, 서로가 영향을 주지 않도록 하는 것이다. 만약 의존성 주입을 하지 않은 코드의 경우에는클래스끼리 서로 연관관계가 있어 하나의 클래스를 수정했을 때그와 연관이 있는 다른 클래스에서도 수정이 일어나야 한다. 이러한 문제를 해결하기 위해서는 인터페이스를 적용하여각 클래스를 구현하고 객체를 사용할 때 인터페이스로 타입을 선언할 수 있지만여전히 일부 클래..

BackEnd/Spring 2024.10.11