인프런 커뮤니티 질문&답변

imddu님의 프로필 이미지
imddu

작성한 질문수

스프링 시큐리티

5) 인증 및 인가 예외 처리 - AjaxLoginUrlAuthenticationEntryPoint, AjaxAccessDeniedHandler

안녕하세요 선생님~ AuthenticationEntryPoint 관련하여 질문 있습니다!

작성

·

1.9K

0

안녕하세요 선생님~ 유익한 강의 만들어주셔서 감사합니다 :)

다름이 아니라, 제가 JWT와 연동하여 프로젝트를 진행중에 있는데 알수없는 현상이.. 나타나서ㅠㅠ 질문드립니다..

현재 JWT으로 인증을 받고, 토큰이 유효하지 않으면 LoginPage로 리다이렉션하기 위해 AuthenticationEntryPoint를 커스텀하여 사용하고 있습니다.

브라우저를 통해 하면 토큰생성 및 인증처리도 정상적으로 잘 되나,, 신기한게,, 토큰을 담은 쿠키를 확인하려고 브라우저(크롬, 사파리) 개발자도구를 키면 바로 AuthenticationEntryPoint를 호출하는 로그를 볼 수 있었습니다. (토큰이 유효한데도 개발자도구만 키면 넘어갑니다..) 

@Component
public class JwtAuthenticationEntryPoint implements AuthenticationEntryPoint {

@Override
public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException authException) throws IOException, ServletException {
response.sendRedirect("/user/login?error='Not ValidToken'&exception='Login Again!'");
}

}

혹시.. 의심가는 증상이 있으신가요 선생님ㅠㅠ 저 현상이 일어나고 바로 개발자도구를 끄고 다시 페이지 리로드하면 앤트리포인트의 로그는 찍히지 않습니다..ㅠㅠ

선생님의 강의 덕분에 많은 공부를 하고있습니다. 늘 감사합니다!

 

 

답변 4

0

혹시 해결하셨나요?

0

imddu님의 프로필 이미지
imddu
질문자

 엇 회사프로젝트에 적용중이라 공유는 힘들것 같습니다 선생님ㅠㅠ 죄송함니다..

0

정수원님의 프로필 이미지
정수원
지식공유자

이 부분은 저도 실행을 해 봐야 정확하게 알 수 있을 것 같습니다.

혹시 깃 소스 공유 가능할까요?

0

imddu님의 프로필 이미지
imddu
질문자

commence 함수 안에서 request.getRequestURL() 을 찍어보니 localhost:8080/error 를 찍습니다. authException은 org.springframework.security.authentication.InsufficientAuthenticationException: Full authentication is required to access this resource  을 찍구요.

 

SecurityConfig에서 permitALL()로 지정한 API, 지정하지 않은 API 모두 개발자도구만 키면 위처럼 나오고 있습니다. 다만 토큰값이 유효한 경우는 위처럼 commence 함수에 들어가도 리다이렉트를 하지 않습니다.

imddu님의 프로필 이미지
imddu

작성한 질문수

질문하기