
Spring Security는 인증에 대한 포괄적인 지원을 제공한다.
OAuth 2.0 OpenID Connect 및 비표준 OAuth 2.0 로그인 (ex: 네이버 로그인, 카카오 로그인, 깃허브 로그인 ..)JAAS로 인증OpenID 인증(OpenID Connect와 혼동 X)SiteMinder 또는 Java EE 보안과 같은 외부 매커니즘으로 인증을 하지만 일반적인 악용에 대한 권한 부여 및 보호를 위해 여전히 Spring Security를 사용간단하게 스프링 시큐리티 내에서 폼 기반 로그인이 어떻게 작동하는지 살펴보자.
Spring Security는 html 형식을 통해 제공되는 사용자 이름과 비밀번호에 대한 지원을 제공한다.

/private에 대해 인증되지 않은 요청을 한다.Spring Security는 인증 FilterSecurityinterceptor되지 않은 요청이 AccessDeninedException에 의해서 ExceptionTranslationFilter로 반환된다.리디렉션한다.리디렉션된 로그인 페이지를 요청한다.렌더링 한다.로그인 페이지가 렌더링 되고 사용자가 사용자 이름과 암호를 제출하면 UsernamePasswordAuthenticationFilter로 인증한다.

사용자 이름과 암호를 추출하여 UsernamePasswordAuthenticationFilter를 거친다.UsernamePasswordAuthenticationToken으로 전달된다.FailureSecurityContextHolder가 지워진다.RememberMeServices.loginFail이 호출된다.AuthenticationFailureHandler가 호출된다.SuccessSessionAuthenticationStrategy에서 새로운 로그인 알림을 받음RememberMeServices.loginSuccess 호출ApplicationEventPulbisher 발행AuthenticationSuccessHandler 호출 일반적으로 이것은 로그인 페이지로 리디렉션할 때 SimpleUrlAuthenticationSuccessHandler 저장된 요청으로 리디렉션