Spring Security는 Spring 기반의 애플리케이션의 보안(인증과 권한, 인가)을 담당하는 스프링 하위 프레임워크이다.
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-taglibs</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
시큐리티 ▶ 로그인 요청 ▶ 시큐리티가 가로채서 로그인 진행 후 완료 ▶ 유저 정보를 시큐리티 세션에 저장 (유저정보 IoC, type : userDetails) ▶ 해쉬 암호화 ▶ 로그인
Authentication authentication = authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(user.getUsername(), user.getPassword()));
// authentication 객체에 세션 저장
SecurityContextHolder.getContext().setAuthentication(authentication);