JWT 에러 메시지를 세분화하고 JWT 검증 실패 시 Filter단에서 처리한다.
gusah009 opened this issue · comments
사전 수행 issue
이슈 내용
JWT 에러 메시지 세분화
프론트에서 세션 인증 실패 시 (세션 만료, 권한 없음)에 대한 응답 정보가 부족한 경우가 있습니다.
해당 코드와 스프링시큐리티 JWT 예외처리 블로그를 참고하여 JWT 에러 메시지를 세분화합니다.
JWT 검증 실패 시 filter에서 처리
현재에는 아래와 같이 Access Denied
나 Authentication Entry Point
가 발생하면 sendRedirect
를 통해 다시 요청을 보내고 있습니다.
이는 두 번 중복하여 데이터를 보내는 행위이므로, 불필요한 재요청을 막도록 합시다.
@Component
public class CustomAccessDeniedHandler implements AccessDeniedHandler {
@Override
public void handle(HttpServletRequest request, HttpServletResponse response,
AccessDeniedException exception) throws IOException {
response.sendRedirect("/exception/accessdenied");
}
}
이슈 수행 사항
- JWT 에러 메시지 세분화
- JWT 검증 실패 시 filter에서 처리