📒자동 설정에 의한 기본 보안 설정 별도의 코드를 작성하지 않아도 spring boot start security 모듈만 추가하면 자동 설정에 의해 기본적인 웹 보안 기능이 적용된다. 기본적인 웹 보안 기능 모든 요청에 대해 인증 여부를 확인한다. 폼 로그인과
📒SecurityBuilder와 SecurityCofigurer SecurityBuilder와 SecurityConfigurer 둘 다 인터페이스다. SecurityBuilder 가 SecurityConfigurer를 참조하고 있고, 인증 및 인가의 초기화 작업은
HttpSecurity는 인증/인가와 관련된 모든 설정을 할 수 있기 때문에 spring security 전반에 걸쳐 매우 중요한 클래스다.HttpSecurityConfiguration에서 HttpSecurity를 생성하고 HttpSecurity는 보안에 필요한 Sec
DelegatingFilterProxy와 FilterChainProxy가 어떻게 생성되고 이 두 객체가 자동 설정에 의한 기본 보안 적용 기능 과정에서 어떻게 쓰이는지 흐름을 파악한다.우선 Filter는 spring을 사용한다면(더 정확히는 servlet contain
spring security의 자동 설정에 의한 기본 보안 말고 우리가 정의한 SecurityFilterChain을 통해 보안 기능 적용해보기사용자 정의 보안을 적용하기 위해서는 SecurityFilterChain 타입 객체를 정의한 후 인증 및 인가 API를 설정하고
📒목표 폼 인증을 위해 사용하는 UsernamePasswordAuthenticationFilter의 동작 흐름을 파악한다. 📒AbstractAuthenticationProcessingFilter 스프링 시큐리티가 사용자 인증을 위해 사용하는 기본 필터다 User
📒목표 익명 인증 사용자에 대해서 알아보고 전체적인 흐름을 확인한다. 📒개요 ✔️익명사용자 스프링 시큐리티에서는 "인증되지 않은 사용자"를 "익명으로 인증된 사용자"로 취급하고 있으며, 이는 액세스 제어 속성을 구성하는데 더 편리하게 하기 위함이다. Secur
logout 필터 프로세스를 살펴보고 이해해보자.스프링 시큐리티는 formLogin 기능을 활성화 하는 경우 기본적으로 로그인/로그아웃 페이지를 제공한다. 로그아웃 페이지는 DefaultLougoutPageGeneratingFilter를 통해 생성되고 "GET /log
📒참고 본 Spring Security 시리즈 내용은 인프런 정수원님의 강의 내용을 정리한 시리즈입니다. 상업적 이용 목적의 포스팅 무단 복제 및 사용을 금합니다. 강의 주소: https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%EC%8B%9C%ED%81%90%EB%A6%AC%ED%8B%B0-%...
spring security는 요청 기반 권한 확인, 메소드 기반 권한 확인을 설정할 수 있다.요청 기반 권한 확인은 HttpSecurity 인스턴스를 사용하여 권한 규칙을 선언함으로써 적용된다.authorizeHttpRequests()를 사용해서 특정 엔드포인트와,
HttpSecurity의 폼 로그인 인증 매커니즘을 활성화 하기 위한 api.HttpSecurity의 formLogin 메소드에서 FormLoginConfigurer 객체 생성FormLoginConfigurer 생성자에서 UsernamePasswordAuthentica
목표 구글 Oauth2.0 인증 로그인 OAuth2.0, OpenID Connect OpenID Connect 1.0은 id_token이라는 특별한 토큰을 제공함(ex. google) 이는 OAuth2 클라이언트가 사용자 신원 확인을 수행하고 사용자를 로그인시키
📒OAuth2.0 로그인 리디렉션 URI 기본 리디렉션 URI 템플릿은 {baseUrl}/login/oauth2/code/{registrationId}이다. 여기서 registrationId는 ClientRegistration의 고유 식별자다. 리디렉션 URI