Backend 96

Spring Security 기반 JWT(JSON Web Token) 개념 및 구현 (2) - 프로젝트 환경 구성 및 기본 도메인 예제

참고용 이전 발행글2025.04.24 - [Backend/보안] - Spring Security 기반 JWT(JSON Web Token) 개념 및 구현 (1) - 무상태 인증의 구조적 이해 📌 목차 1. 핵심 의존성 구성 2. 기본 도메인 및 DB 연동 준비 3. 사용자 인증 구현 – UserDetails 및 UserDetailsService ">📌 목차1. 핵심 의존성 구성 2. 기본 도메인 및 DB 연동 준비 3. 사용자 인증 구현 – UserDetails 및 UserDetailsService 1. 핵심 의존성 구성">1. 핵심 의존성 구성dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' ..

Backend/보안 2025.04.25

Spring Security 기반 JWT(JSON Web Token) 개념 및 구현 (1) - 무상태 인증의 구조적 이해

📌 목차 1. JWT란 무엇인가? 2. JWT를 사용하는 이유 3. 세션 기반 인증 vs JWT 기반 인증 4. Refresh Token을 활용한 대응 방안 5. 요약 및 마무리 ">📌 목차1. JWT란 무엇인가? 2. JWT를 사용하는 이유 3. 세션 기반 인증 vs JWT 기반 인증 4. Refresh Token을 활용한 대응 방안 5. 요약 및 마무리1. JWT란 무엇인가?">1. JWT란 무엇인가?JWT(Json Web Token)는 인증에 필요한 정보를 JSON 형식으로 구조화하여 하나의 토큰에 담아 클라이언트에게 전달하는 방식이다.이 방식의 핵심은 서버가 인증 상태를 별도로 저장하지 않고도, 매 요청 시 클라이언트가 전달하는 토큰만으로 인증을 수행할 수 있다는 데 있다. 이는 Statele..

Backend/보안 2025.04.24

Spring Security 예외 처리 필터, ExceptionTranslationFilter(SecurityFilterChain 15번째 필터)

참고용 이전 발행글2025.04.21 - [Backend/보안] - Spring Security의 익명 사용자 보호 필터, AnonymousAuthenticationFilter(SecurityFilterChain 14번째 필터) 📌 목차 1. ExceptionTranslationFilter란 무엇인가? 2. doFilter() 내부 흐름과 예외 유형별 처리 흐름 3. 예외 처리 핸들러 구성과 한계 4. 설정 예시 (SecurityConfig) 5. 요약 ">📌 목차1. ExceptionTranslationFilter란 무엇인가? 2. doFilter() 내부 흐름과 예외 유형별 처리 흐름 3. 예외 처리 핸들러 구성과 한계 4. 설정 예시 (SecurityConfig) 5. 요약 1. Exceptio..

Backend/보안 2025.04.22

Spring Security의 익명 사용자 보호 필터, AnonymousAuthenticationFilter(SecurityFilterChain 14번째 필터)

참고용 이전 발행글2025.04.17 - [Backend/보안] - Spring Security - 인증 API를 확장하는 보안 필터, SecurityContextHolderAwareRequestFilter(SecurityFilterChain 13번째 필터) 📌 목차 1. AnonymousAuthenticationFilter란 무엇인가? 2. 해당 필터가 필요한 이유 3. 필터의 작동 방식 4. AnonymousAuthenticationToken의 구조 5. 실제 코드 예시 6. 비활성화 방법 7. 요약 ">📌 목차1. AnonymousAuthenticationFilter란 무엇인가? 2. 해당 필터가 필요한 이유 3. 필터의 작동 방식 4. AnonymousAuthenticationToken의 구조..

Backend/보안 2025.04.21

Spring Security 계층 권한 설정하기, Role Hierarchy 개념과 활용

📌 목차 1. Role Hierarchy란 무엇인가? 2. 계층 권한 미적용 시의 문제점 3. Role Hierarchy 적용 방법 4. 필터 체인에의 간결한 적용 5. 내부 동작 방식 이해 6. 실전 적용 팁 7. 마무리 요약 ">📌 목차1. Role Hierarchy란 무엇인가? 2. 계층 권한 미적용 시의 문제점 3. Role Hierarchy 적용 방법 4. 필터 체인에의 간결한 적용 5. 내부 동작 방식 이해 6. 실전 적용 팁 7. 마무리 요약1. Role Hierarchy란 무엇인가?">1. Role Hierarchy란 무엇인가?Role Hierarchy, 즉 계층 권한이란 상위 권한을 가진 사용자가 하위 권한까지도 함께 보유하도록 만드는 Spring Security의 기능이다.예를 들어..

Backend/보안 2025.04.19

세션 고정 공격(Session Fixation)과 Spring Security의 대응 전략

📌 목차 1. 세션 고정 공격이란? 2. 공격 흐름 설명 3. Spring Security의 기본 방어 메커니즘 4. 세션 제한 및 만료 시간 설정 5. 요약 ">📌 목차1. 세션 고정 공격이란? 2. 공격 흐름 설명 3. Spring Security의 기본 방어 메커니즘 4. 세션 제한 및 만료 시간 설정 5. 요약 1. 세션 고정 공격이란?">1. 세션 고정 공격이란? 세션 고정(Session Fixation) 공격이란, 공격자가 먼저 합법적인 세션 ID를 획득한 뒤, 해당 세션 ID를 사용자에게 할당하고 로그인 과정을 유도하여 인증 이후에도 동일한 세션 ID를 통해 권한을 탈취하는 방식의 공격이다. 이와 같은 방식은 서버가 기존 세션 ID를 유지한 채 사용자의 로그인 상태를 반영할 경우에 발생할..

Backend/보안 2025.04.19

테스트를 위한 H2 Database + Spring Data JPA 구성 방법

참고용 QueryDSL 설정2025.03.13 - [Backend/JPA] - JPA (Spring Data JPA) - Spring Boot 3+ QueryDSL 및 JPA 기본 설정, p6spy 로깅 방법1. 아래 내용을 진행하기에 앞서 H2 데이터베이스 설치 (운영체제에 맞게 설치)https://www.h2database.com/html/main.html2. 설치 후, h2 데이터베이스 실행설치된 h2 데이터베이스 경로에서 bat 파일 실행해주기h2\bin 이동 -> h2.bat 클릭하여 실행터미널 명령어를 통해 실행h2 디렉토리 bin 폴더 경로로 이동 후(예: cd /h2/bin) 아래 명령어 입력.\h2.bat 3. 실행 후, h2 콘솔이 띄워지면 도메인명 localhost로 변경 4. 위까지..

Backend/JPA 2025.04.18

Spring Security - 인증 API를 확장하는 보안 필터, SecurityContextHolderAwareRequestFilter(SecurityFilterChain 13번째 필터)

참고용 이전 발행글2025.04.16 - [Backend/보안] - Spring Security - 인증 후 원래 요청으로 복원해주는 보안 필터, RequestCacheAwareFilter(SecurityFilterChain 12번째 필터) 📌 목차 1. SecurityContextHolderAwareRequestFilter란 무엇인가? 2. 주요 기능 및 동작 개요 3. 해당 필터가 필요한 이유 4. 클래스 구조 및 내부 구성 5. 비동기 처리와의 연계 6. 설정 및 비활성화 방법 7. 요약 정리 ">📌 목차1. SecurityContextHolderAwareRequestFilter란 무엇인가? 2. 주요 기능 및 동작 개요 3. 해당 필터가 필요한 이유 4. 클래스 구조 및 내부 구성 5. 비동기..

Backend/보안 2025.04.17

Spring Security - 인증 후 원래 요청으로 복원해주는 보안 필터, RequestCacheAwareFilter(SecurityFilterChain 12번째 필터)

참고용 이전 발행글2025.04.16 - [Backend/보안] - Spring Security - HTTP 기본 인증을 처리하는 필터, BasicAuthenticationFilter(SecurityFilterChain 11번째 필터) 📌 목차 1. RequestCacheAwareFilter란? 2. 동작 예시 흐름 3. 동작 흐름 상세 설명 4. 내부 코드 흐름 분석 5. 주요 클래스 구성 요약 6. 설정 및 비활성화 방법 7. 요약 정리 ">📌 목차1. RequestCacheAwareFilter란? 2. 동작 예시 흐름 3. 동작 흐름 상세 설명 4. 내부 코드 흐름 분석 5. 주요 클래스 구성 요약 6. 설정 및 비활성화 방법 7. 요약 정리 1. RequestCacheAwareFilter란?"..

Backend/보안 2025.04.16

Spring Security - HTTP 기본 인증을 처리하는 필터, BasicAuthenticationFilter(SecurityFilterChain 11번째 필터)

참고용 이전 발행글2025.04.15 - [Backend/보안] - Spring Security - 기본 로그아웃 확인 페이지를 생성하는 필터, DefaultLogoutPageGeneratingFilter(SecurityFilterChain 10번째 필터) 📌 목차 1. BasicAuthenticationFilter란? 2. HTTP Basic 인증이란? 3. 기본 동작 흐름 4. 클래스 및 구성요소 요약 5. 실제 사용 예시 6. 브라우저 및 Postman 테스트 방법 7. 요약 ">📌 목차1. BasicAuthenticationFilter란? 2. HTTP Basic 인증이란? 3. 기본 동작 흐름 4. 클래스 및 구성요소 요약 5. 실제 사용 예시 6. 브라우저 및 Postman 테스트 방법 7..

Backend/보안 2025.04.16