Spring and Spring Boot/Spring Security 3

Spring Security Series (3) 필터 체인 더 깊게 들어가기 (FilterChain, Filter, ServletFilterChain, Servlet Filter, Servlet Container, HttpServletRequest, ServletRequest, Wrapper Class)

각 구성요소의 시점 별로 재설명합니다. 따라서 일부 설명이 중복되는 점 양해바랍니다. 전체적인 프로세스 즉, 스프링 시큐리티 프레임워크의 동작원리를 알고 싶다면 동작원리 관점에서 기록한 여기를 참고해주세요.FilterChain과 자주 혼동하는 SpringFilterChain이 궁금하다면 여기에 기록해두었으니 참고하시길 바랍니다.파란 밑줄 글씨는 링크, 주황 밑줄 글씨는 단순한 강조, 초록 밑줄 글씨는 뇌피셜입니다.   ➡️ 자바가 제공하는 인터페이스 : FilterChain 서블릿 API의 일부분으로 Java Servlet API에서 정의된 인터페이스이다. FilterChain은 단일 HTTP 요청을 처리하는 레이어로, Servlet Container에서 필터를 구성하고 관리하는 방식을 사용한다. Fil..

Spring Security Series (2) 동작 원리 (ver Spring Boot 3.x.x, Spring Security 6.x.x)

스프링 부트 요청 처리 흐름 요약 (with Spring Security)1. 클라이언트 요청 → 2. 서블릿 컨테이너(Apache Tomcat)로 전달 → 3. Spring Security 필터 체인 실행→ 4. DispatcherServlet으로 요청 전달 → 5. 핸들러 매핑으로 적절한 컨트롤러 찾기 → 6. 핸들러 어댑터로 컨트롤러 메소드 실행 → 7. 컨트롤러 메소드 실행 → 8. 서비스 및 비즈니스 로직 처리 → 9. 응답 반환 → 10. 필터/인터셉터 후속 처리 → 11. HTTP 응답 클라이언트로 전송스프링 시큐리티 프레임워크의 동작원리이 글은 Spring Boot 3.x.x, Spring Security 6.x.x를 기준으로 설명합니다.앞으로의 설명에서 웹 애플리케이션(WAS, Web A..

Spring Security Series (1) 웹 애플리케이션 보안 취약점과 그 대응 전략 (CSRF, XSS)

스프링 시큐리티 시리즈의 첫 번째 글인 [ 웹 애플리케이션 보안 취약점과 그 대응 전략 ]에서는앞으로의 스프링 시큐리티 학습을 위해 우선적으로 스프링 시큐리티가 무엇인지 감을 잡는 것을 주목표로 잡았습니다. 덧붙여 스프링 시큐리티를 왜 그리고 언제 사용하는지 알아봄으로써 포문을 열기 위해, 웹 애플리케이션 보안 취약점과 각각에 대한 스프링 시큐리티의 대응 전략 또한 살펴봅시다. 참고로 해당 시리즈는 블로그 카테고리의 스프링 시큐리티 항목에 포함되어 있습니다.스프링 시큐리티란?스프링 시큐리티(Spring Security)는 Java 기반 웹 애플리케이션의 보안을 위해, 주로 시스템의 최상위 계층인 애플리케이션 수준에서 작동하는 스프링 컨텍스트 관리 기반의 프레임워크입니다. 때문에 구성과 동작 방식도 스프링..