본문으로 바로가기

Spring Boot 기반으로 개발하는 Spring Security #1

목차

    Logout 처리, LogoutFilter

            http.logout() // 로그아웃 처리
                    .logoutUrl("/logout") // 로그아웃 처리 URL
                    .logoutSuccessUrl("/login") // 로그아웃 성공 후 이동 페이지
                    .deleteCookies("JESSIONID", "remember-me") // 로그아웃 후 쿠키 삭제
                    .addLogoutHandler() // 로그아웃 핸들러
                    .logoutSuccessHandler() // 로그아웃 성공 후 핸들러러

    로그아웃은 기본적으로 POST 방식으로 함.

     

    Remember Me 인증

    • 세션이 만료되고 웹 브라우저가 종료된 후에도 애플리케이션이 사용자를 기억하는 기능.
    • Remember-Me 쿠키에 대한 Http 요청 을 확인한 후 토큰 기반 인증을 사용해 유효성을 검사하고 토큰이 검증되면 사용자는 로그인 됨.
    • 사용자 라이프 사이클
      • 인증 성공
      • 인증 실패
      • 로그아웃
            http
                .rememberMe() // rememberMe 기능이 작동
                    .rememberMeParameter("remember") // 기본 파라미터명은 remember-me
                    .tokenValiditySeconds(3600) // Default는 14일
    //                .alwaysRemember(true) // 리멤버 미 기능이 활성화되지 않아도 항상 실행
                    .userDetailsService(userDetailsService); // 리멤버 미 인증할 때 필요한 서비스스

    RememberMeAuthenticationFilter