스프링 시큐리티 - 권한부여,허가 (Authorization)

Seongjin Jo·2023년 3월 4일
0

SpringBoot

목록 보기
4/4

목적

스프링 시큐리티의 Authorization 과정에 대해서 잘 알기위함.
다음에 까먹어도 이 글을 보고 잘 이해하기 위함.

Authorization

  1. SpringSecurity는 권한이나 인증이 필요한 특정 주소를 요청을 했을 때 BasicAuthenticationFilter라는 필터가 발동된다.
    이 필터는 (1)토큰을 검증하고, (2)Autentication객체를 만들어서 SpringSecurity세션에 담는 역할을한다.
  2. 일단 login요청을 했을 때 우리는 authencation에서 스프링 시큐리티 컨텍스트홀더에 그 loginuser를 세션에 등록하지만, 우리는 다른 api요청이 들어올때 마다 Authorization SecurityConfig에서 세션 STATELESS 정책을 사용한다. -> JWT정책을 사용하기 때문에 세션을 유지 시킬 필요가 없다. 근데 BasicAuthenticationFilter에서 Autentication객체를 만들어서 SpringSecurity세션에 담는이유는 인증토큰에 담겨있는 role을 알기위해서.
  3. role도 해당 api요청에 필요한 role과 일치하면 chain.doFilter(request,response); 로 컨트롤러 (Dispatcher Servlet)으로 진입!

0개의 댓글