본문 바로가기

Spring3

[Spring] AbstractAuthenticationProcessingFilter : Spring Security의 로그인 인증 동작 방법 AbstractAuthenticationProcessingFilter SecurityFilterChain 안에는 Spring Security에서 제공하는 여러 필터들이 존재한다. 이때 Authentication을 담당하는 필터가 AbstractAuthenticationProcessingFilter 이다.전체 동작 과정 1. 사용자가 로그인 정보를 입력하고 인증 요청을 보낸다.2. AuthenticationFilter가 HttpServletRequest에서 사용자가 보낸 아이디와 패스워드를 인터셉트한다.3. AuthenticationFilter에게 인증용 객체(UsernamePasswordAuthenticationToken)를 전달받는다.4. 실제 인증할 AuthenticationProvider에게 Aut.. 2024. 8. 20.
[Spring] Spring Security에 대하여 Spring Security란?스프링 공식 문서에서 Spring Security는 스프링을 활용한 애플리케이션에서 인증과 인가를 담당하고, 해킹 공격에 대해 보호해주는 보안 표준이라고 말하고 있다. 1. 인증과 인가2. 일반적인 해킹 공격(CSRF, 세션 고정 등)으로의 보호Spring Security 동작 과정위의 사진처럼 Spring Security는 요청이 들어올 때, Servliet FilterChain을 자동으로 구성하고 거치게 한다.   필터 필터는 디스페처 서블릿에 요청이 전달되기 전, 후에 url 패턴에 맞는 모든 요청에 대해 필터링하는 기능을 제공한다.-> 스프링 컨테이너에서 제공되는 기능이 아닌, 톰캣과 같은 웹 컨테이너에 의해 관리된다.-> 필터는 보안검사를 통해 올바른 요청이 아닐 .. 2024. 8. 20.
[Spring] FactoryBean & ApplicationContextAware 인터페이스 스프링의 빈 등록스프링은 지정된 클래스 이름을 가지고 리플렉션을 이용해 빈을 생성한다.하지만, 스프링에서 DI 할 수 없는 클래스의 빈이 있을 수도 있음 -> 정보를 미리 알아낼 수 없는 경우 - Dynamic Proxy로 만드는 객체의 경우, 클래스를 미리 알 수 없음- new 연산자로 생성할 수 없는 객체- Third-Party에서 제공하는 클래스 등 -> 이를 위해 스프링에서 FactoryBean 클래스 제공 FactoryBeanFactoryBean 인터페이스public interface FactoryBean { T getObject() throws Exception; Class getObjectType(); boolean isSingleton();}- getObject() : 팩토.. 2024. 5. 14.