-
시큐리티 1부~2부Spring 2020. 7. 13. 15:50
- 시큐리티 의존성 추가시
인증되지 않은 사용자가 접근시 /login으로 리다이렉트 된다. (테스트 코드 포함)
- 접속시
스프링부트 자동 설정에 의해서 username, pass 가 주어진다.
기본 username : user
passowrd : 애플리케이션을 실행할 때마다, 랜덤하게 주어진다.
- 테스트 코드에서 인증된 유저 정보가 주고싶을때
spring-security-test 의존성 추가,
위와 같이 @WithMockUser 추가
- SecurityConfig 설정
이전에 ConditionOnMissingBean이였는데
WebSecurityConfigurerAdapter를 상속받았으니 기존의 자동설정은 이제 적용되지 않는다.
이렇게 실행시, my 에서만 로그인을 요구한다.
- UserDetailService 구현
일반적으로 유저 정보를 관리하는 서비스 계층에서 구현
UserDetailService로 등록된 빈이 있으니 이제 스프링 부트가 기본 유저를 생성하지 않는다.
리턴값은 UserDetails라는 인터페이스 구현체이다.
User(username, password, 권한)을 리턴한다.
- PasswordEncoder
인증 계정 정보에 들어가는 패스워드는 모두 인코딩되어서 DB에 저장되어야 한다.
'Spring' 카테고리의 다른 글
Spring security 정리 (0) 2021.02.02 spring-security 잘 정리된 글 (0) 2021.02.01 데이터 7부 : 데이터베이스 초기화 (0) 2020.07.13 데이터 5~6부 : 스프링 데이터 JPA (0) 2020.07.12 데이터 4부 : PostgreSQL (0) 2020.07.12