마지막 강의 질문드립니다.
307
작성한 질문수 1
여기서 super.doFilterInternal(request, response, chain);
위 문장을 지워주셨는데 해당 줄을 지우면 회원가입 로직이 컨트롤러를 타지 않습니다.
회원가입은 /join으로 매핑되어 있는데 JwtAuthorizationFilter의 doFilterInternal() 메소드를 타고

jwtHeader 값이 없기 때문에 return을 만나 컨트롤러를 타지 않는 것 같습니다.
반대로 super.doFilterInternal(request, response, chain); 주석 해제하면 회원가입 로직은 진행됩니다만 마지막 강의에서 인증이 되지 않는 문제가 계속 일어나고 있습니다!


SecurityConfig 클래스 코드입니다!
부족한 지식으로 제 생각이 다를 수 있지만 문제를 해결하지 못하고 있어 질문 드립니다ㅠㅠ
답변 2
0
안녕하세요, 인프런 AI 인턴이에요.
해당 코드를 보면, super.doFilterInternal(request, response, chain); 이 부분을 주석처리하면 회원가입 로직이 동작하지 않고, 주석을 해제하면 인증이 되지 않는 문제가 일어난다고 하셨네요.
이 문제의 원인은 JwtAuthorizationFilter 클래스를 통해 요청이 거부되고 인증이 실패하기 때문입니다. doFilterInternal() 메소드에서 Jwt 토큰의 유효성을 검사하고 인증 과정을 진행하게 되는데, 만약 Jwt 토큰이 없거나 유효하지 않을 경우에는 인증이 실패하고 컨트롤러에 도달하지 않게 됩니다.
따라서 super.doFilterInternal(request, response, chain);를 주석 처리한 상태에서는 Jwt 토큰을 생성하지 않거나 유효하지 않은 토큰으로 요청을 보내면 인증 과정에서 실패하게 됩니다. 따라서 회원가입 로직이 실행되지 않고 컨트롤러에 도달하지 않는 것이 정상 동작입니다.
만약 인증을 거치지 않고 회원가입 로직을 실행하려면 JwtAuthorizationFilter에서 인증되지 않은 요청을 거부하는 로직을 수정해야 할 것 같습니다. 실제로 인증이 필요하지 않은 요청에 대해서는 Jwt 토큰 검사를 건너뛰도록 처리해주면 됩니다.
위의 내용으로 해결되지 않는다면, 좀 더 자세한 코드와 에러 메시지 등을 공유해주시면 더 도움을 드릴 수 있을 것 같아요.
JWT를 구현한 다음 이 API를 호출해서 사용하는 것은 프론트엔드 쪽에서 하는 역할인가요?
0
98
1
Jwt쓰면 스프링시큐리티는 필수적으로 사용해야하나요?
0
401
1
13:23 system.out 출력문이 다르게 나옵니다.
0
130
1
수료증 문의
0
228
2
9분대에 질문이 있습니다 !
0
115
1
password 비교를 하지 않았는데 어떻게 인증이 통과된 건가요?
0
321
1
이전 강의 참고하라는 말씀
0
253
1
강의 실습하다가 막히는 분들 참고(2024년8월 기준)
2
1116
2
구글 소셜 로그인 302
0
201
1
오류 문의 _ org.springframework.orm.jpa.JpaSystemException: could not deserialize
1
585
1
[자바] 시큐리티 Config 참고
13
953
1
이론강의
0
280
1
SpringSecurity JWT 로그인 URL 2개 설정하는 방법
0
488
1
2024.06기준) 최근 SecurityConfig 설정 문의
0
922
3
구글 로그인시 authentication이 null 값이라고 에러가 발생합니다.
0
678
2
특정 url필터 거는 방법 이슈
0
422
1
강사님께서 말씀하시는 시큐리티세션이 SecurityContext인가요?
0
279
1
25강 마지막 테스트에서 오류
1
1044
2
jwt를 저장하는 위치에 궁금한 점이 있습니다.
0
298
1
mustache를 사용하지 않고 thymeleaf를 사용하려고 하는데
0
697
1
세션 인증방식이 REST 원칙에 위배되는 건가요?
0
342
1
jwt와 실제데이터의 관계
1
246
1
jwt 와 세션ID의 관계
1
313
1
SecurityConfig에서 세션 설정, 인가 설정
0
422
1





