inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

ghwns6659님의 게시글

ghwns6659 ghwns6659

@ghwns66598779

수강평 작성수
2
평균평점
5.0

게시글 1

질문&답변

스프링 시큐리티 6.2 버전 이후로 apply() 메서드를 이용한 JwtAuthenticationFilter 가 등록이 안됩니다.

작성자 본인입니다. 일단 해결은 했습니다. 스프링 시큐리티 문서 뒤지면서 with 메서드로 커스텀 필터 어떻게 적용시키는지 찾아보다가 발견했습니다. https://docs.spring.io/spring-security/reference/servlet/configuration/java.html#jc-custom-dsls 여기서 보니까 with 메서드에 두번째 매개변수로 Customizer customizer 넘겨주는 부분에서 람다식을 작성해서 메서드 참조로 넘겨버리더군요 문서에서는 커스텀 필터 내부에 작성해둔 flag(true) 메서드를 넘겨주는식으로 작성되어 있었는데 이 강의에서 실습으로 만든 내부 클래스 CustomSecurityFilterManager 에는 configure 메서드를 오버라이드 해온거 말곤 다른 메서드는 없었기에 그냥 대충 getClass() 같은 Object 클래스 단의 메서드 참조를 넘기면 될 까 싶더니 정상적으로 잘 실행이 되더라구요 (참고로 toString() 메서드를 참조로 보내도 정상적으로 잘 동작했습니다. 도대체 왜 그런건지는 모르겠습니다만.....) 원래는 이렇게 작성하는게 아나라 스프링 시큐리티 문서에서 처럼 내부에 작성되어 있는 메서드 같은걸 참조로 보내줘야 할 것같은데, 일단 해결되기는 했으니까 이대로 계속 강의 들어보겠습니다. 아래는 해결 코드입니다. // JWT 필터 등록 http.with(new CustomSecurityFilterManager(), customizer -> customizer.getClass());

좋아요수
2
댓글수
1
조회수
1155