시큐리티 로그아웃 (Logout) 1) 로그아웃 설정 📑 SecurityConfig.java logoutRequestMatcher(new AntPathRequestMatcher("주소")) : 로그아웃 주소 logoutSuccessUrl("주소") : 로그아웃 성공 시 이동할 경로 package com.example.travel.config; ... @Log4j2 @Configuration public class SecurityConfig { @Autowired private UserTravelDetailsService userDetailService; //로그인기능 @Bean PasswordEncoder passwordEncoder(){ return new BCryptPasswordEncoder(); ..
자동 로그인 설정 Remember Me 시큐리티를 사용하여 간단하게 구연할 수 있다. 실제 로그인 로직을 살펴보면 remember-me 체크를 하고 로그인시 해당 쿠키가 발급되어 생성되는 것을 볼 수 있다 . 사용자가 애플리케이션에서 로그아웃 시 JSESSIONID 뿐만 아니라 remember-me 쿠키도 삭제된다. Remember Me 웹 인증 방식 중 쿠키를 사용하는 방식 로그인 된 사용자가 브라우를 닫고 재 접속 해도 로그인 절차 없이 로그인 처리가 진행되는 것이다. Remember-me 토큰 쿠키를 사용한다. filterChain 에 http.rememberMe() 추가 rememberMeParameter("checkbox name") : remember-me기능을 사용할 체크박스의 이름과 동일 ..
시큐리티 소셜 로그인 처리 - Google oauth2 사용자가 간편하게 로그인 할 수 있도록 설정해주는 소셜 로그인 기능을 추가해보려고한다. 먼저 google api 서비스를 이용해서 프로젝트를 등록하고 사용자 고유 아이디와 비밀번호를 받아야한다. 01 ) Google api 신청 Google 클라우드 플랫폼 로그인 Google 클라우드 플랫폼으로 이동 accounts.google.com 1. 프로젝트 등록 2. OAuth 클라이언트 아이디 만들기 - 'OAuth 클라이언트 ID' 를 선택 시 먼저 OAuth 동의를 해주어야한다. - 동의 후 다시 'OAuth 클라이언트 ID' 선택 애플리케이션 유형 : 웹 애플리케이션 승인된 리다이랙션 URL : http://localhost:8089/login/oa..
Security 권한에 따른 페이지 접속 앞의 Security 속성 설정에 이어, 회원에게 부여된 권한에 따른 페이지 인가를 설정해주려고 한다. [ Security ] 시큐리티 사용하기 - 01. 설정 파일 시큐리티 설정 파일 시큐리티와 관련된 모든 설정들을 관리하는 config 클래스 이다. 스프링 부트 버전 2.7.0 이전에는 ' WebSecurityConfigurerAdapter ' 를 상속받아서 사용해야하며, 이후 부터는 사용되지 jimin-log.tistory.com 01) 회원 객체와 권한 enum 생성 📑ClubMember package com.example.springsecurity.entity; import lombok.*; import javax.persistence.ElementCol..
시큐리티 설정 파일 - WebSecurityConfigurerAdapter 1. Security 권한 설정 Security의 권한은 config에서 설정해줄수 있다. 스프링 부트 버전 2.7.0 이전에는 ' WebSecurityConfigurerAdapter ' 를 상속받아서 할 수 있다. 1) WebSecurityConfigurerAdapter를 상속 받는 클래스 생성. WebSecurityConfigurerAdapter : SecurityFilterChain 필터 체인은 반드시 하나 이상이고 url 패턴에 따라 적용되는 필터 체인을 다르게 할 수 있다. 본래의 메인 필터를 반드시 통과해야만 서블릿에 들어갈 수 있는 단점을 보완 하기위해서 필터 체인 proxy를 두었다고 할수 있다. web resour..