스프링시큐리티
-
remember-meSPRING/스프링 시큐리티 2021. 8. 1. 17:24
1. 세션이 만료되고 브라우저가 종료된 후에도 어플리케이션이 사용자를 기억하는 기능 2. Remember-Me 쿠키에 대한 Http 요청을 확인한 후 토큰 기반 인증을 사용해 유효성을 검사하고 토큰이 검증되면 사용자는 로그인이 됨. @Configuration @EnableWebSecurity public class SecurityConfig extends WebSecurityConfigurerAdapter { @Autowired UserDetailsService userDetailsService; @Override protected void configure(HttpSecurity http) throws Exception { // 모든 리소스에 대한 인증완료시 접근 허용 http .authorizeReq..
-
Security Configuration 클래스 기본 설정SPRING/스프링 시큐리티 2021. 8. 1. 11:37
Security Configuration(설정) 관련 클래스는 WebSecurityConfigurerAdapter를 상속하고, 세부적인 보안 기능을 설정할 수 있는 HttpSecurity API를 제공한다, HttpSecurity API는 크게 인증 API, 인가 API를 제공한다. 인증 : 계정인증에 대한 설정 인가 : 계정의 Role, 권한에 대한 설정 @Configuration @EnableWebSecurity public class SecurityConfig extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) throws Exception { // 모든 리소스에 대한 인증완료시 접근 ..
-
[스프링부트 개념과 활용] 스프링 시큐리티 (활용)SPRING/스프링부트 개념과 활용 2021. 1. 20. 12:34
이전 포스팅은 단순히 스프링 시큐리티를 적용하는데 그쳤지만, 이번에는 실제로 활용할 수 있는 방법을 알아보고자 한다. 위와 같이 시큐리티 설정을 하는 클래스를 생성한다. (index 페이지와 hello 페이지는 정상적인 접근이 가능하지만, my 페이지는 폼 인증 이후 접근이 가능하도록 설정) - PasswordEncoder는 password를 encoding을 한 후에 password를 저장하도록 하는 Bean이다. 계정 정보 Account Entity AccountRepository - 유저이름을 조건으로 유저 정보를 찾는 메서드 추가 AccountService - createAccount : 계정을 생성하는 메서드 - loadUserByUsername : username을 이름을 기준으로 유저정보를 ..
-
[스프링부트 개념과 활용] 스프링 시큐리티 (기본)SPRING/스프링부트 개념과 활용 2021. 1. 19. 23:40
스프링 시큐리티 기본 테스트 아래와 같이 프로젝트를 생성해준다. (타임리프 적용) 시큐리티를 적용하지 않을 시 위와 같이 평범한 화면이 나온다. 하지만 스프링 시큐리티 의존성을 적용할 시에는 아래와 같이 로그인화면이 나온다. org.springframework.boot spring-boot-starter-security 계정 : user 비밀번호는 아래 console 창에 나오는 password를 입력하면 index.html 페이지로 이동할 수 있다. 위와 같은 스프링 시큐리티 기본설정은 실무에서는 사용하지 않는다. UserDetailsService를 별도로 생성하여 애플리케이션에 맞게 커스터마이징하여 사용한다. 테스트 스프링 시큐리티를 테스트하고 싶으면 아래와 같은 의존성을 추가한다. org.sprin..