본문 바로가기

Framework/Spring Framework22

[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 로그아웃 처리 HttpSecurity @Override protected void configure(HttpSecurity http) throws Exception { protected void configure(HttpSecurity http) throws Exception { http.logout() // 로그아웃 처리 .logoutUrl("/logout") // 로그아웃 처리 URL .logoutSuccessUrl("/login") // 로그아웃 성공 후 이동 URL .deleteCookies(" JESSIONID", " remember-me ") // 로그아웃 후 쿠키 삭제 .addLogoutHandler(logoutHandler()) // 로그아웃 후 핸들러 .logoutSuccessHandler(logout.. 2021. 5. 2.
[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.
[SpringFramework] RESTFul Web Service Example - GET, POST, PUT, DELETE 예제 jQuery Ajax 비동기 방식을 통해 MVC CRUD방식의 예제를 다뤄볼것이다. 1. GET(SELECT) 1). 파라미터가없는 단순 SELECT //@RestController @RequestMapping(value="/register",method=RequestMethod.GET) public List register() throws Exception { return mservice.selectMember(); } //Mybatis SELECT id from user_info2; //Client function test() { $.ajax({ type : 'GET', url : '/won/register', success : function(response) { alert("CONTROLLER R.. 2018. 8. 6.