본문 바로가기
반응형

스프링시큐리티4

[Spring Boot] Spring Security 세션 인증 정책 예제 동시 세션 제어 이전 사용자 세션 만료 현재 사용자 인증 실패 @Override protected void configure(HttpSecurity http) throws Exception { // 세션 관리 기능 작동 http.sessionManagement() .maximumSessions(1) // 최대 허용 가능 세션 수, -1 : 무제한 로그인 세션 허용 .maxSessionsPreventsLogin(true) // 동시 로그인 차단, false : 기존 세션 만료(defualt) .invalidSessionUrl("/invalid") // 세션이 유효하지 않을 때 이동할 URL .expiredUrl("/expired") // 세션이 만료된 경우 이동할 URL } 세션 고정 보호 @Overrid.. 2021. 5. 7.
[Spring Boot] Spring Security Remember Me 인증 개념 세션이 만료되고 웹 브라우저가 종료된 후에도 어플리케이션이 사용자를 기억하는 기능 Remember-Me 쿠키에 대한 Http 요청을 확인한 후 토큰 기반 인증을 사용해 유효성을 검사하고 토큰이 검증되면 사용자는 로그인 된다. HttpSecurity @Override protected void configure(HttpSecurity http) throws Exception { http.rememberMe() .rememberMeParameter("remember") // 기본 파라미터명은 remember-me .tokenValiditySeconds(3600) // default : 14 days // default : false, remember-me 기능이 활성화되지않아도 항상 실행 .always.. 2021. 5. 3.
[Spring Boot] Spring Security 로그인 처리 HTTP Security 아래는 configure method에서 구성 가능한 함수들이다. @Override protected void configure(HttpSecurity http) throws Exception { http // Form 로그인 인증 기능 작동 .formLogin() // SpringSecurity에서 기본 Form 로그인 화면 을 제공하지만 // 아래 설정을 하면 사용자 정의 로그인 페이지를 사용할 수 있다. .loginPage("/loginPage") // 로그인 성공 후 이동 페이지 URL .defaultSuccessUrl("/") // 로그인 실패 후 이동 페이지 URL .failureUrl("/login") // Form tag의 name 값, 기본적으로는 username.. 2021. 5. 2.
[Spring Boot] Spring Security 사용자 정의 보안 기능 구현 사용자 정의를 위한 구조 SpringSecurity의 설정을 직접 구현하면 보안관련 설정을 사용자화 할 수 있다. SecurityConfig 객체를 생성하여 WebSecurityConfigurerAdapter 을 상속 받아 configure 메서드를 override 한다. WebSecurityConfigurerAdapter 스프링 시큐리티의 웹 보안 기능을 초기화하고 설정을 담당하는 클래스이다. 기본적인 보안 기능을 활성화 하고 시스템에 보안 기능이 작동하게 하기 위한 모든 설정을 처리 한다. HttpSecurity 세부적인 보안 기능을 설정할 수 있는 API를 제공한다. SecurityConfig 사용자 정의 보안 설정 클래스이다.(정해져있는 클래스명은 아님) 아래의 EnableWebSecurity 어.. 2021. 5. 2.
반응형