inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링 시큐리티 OAuth2

RSA 검증 기능 구현 - JwtAuthorizationRsaFilter

533

asdf

작성한 질문수 4

0

강의를 보다 의문이 생겨서 질문 드립니다.

http.addFilterBefore(jwtAuthorizationRsaFilter(null), UsernamePasswordAuthenticationFilter.class);

필터를 등록하실 때 jwtAuthorizationRsaFIlter에 null을 주셨습니다.

@Bean
public JwtAuthorizationRsaFilter jwtAuthorizationRsaFilter(RSAKey rsaKey) throws JOSEException {
    return new JwtAuthorizationRsaFilter(new RSASSAVerifier(rsaKey.toRSAPublicKey())); // 검증은 공개키
}

그러나 jwtAuthorizationRsaFIlter는 파라미터에 넘어온 rsaKey를 이용하여 공개키를 찾는데 이 rsaKey는 어디서 주입 받는 것인가요??

설정 클래스에 @Autowired는 모두 삭제한 것으로 알고 있습니다.

jwtAuthenticationFilter를 등록할 때 역시 같은 이유로 어디서 주입 받는지 잘 모르겠습니다.

oauth spring java spring-boot

답변 1

0

정수원

소스를 보시면 SignatureConfig 라는 클래스가 있습니다.

이 클래스 안에 RSAKey 가 빈으로 정의가 되어 있습니다.

image

0

asdf

답변해주셔서 감사합니다! 그러나 스프링에 대한 이해도가 낮은 탓인지 이해가 잘 안되는 부분이 있습니다. 빈으로 등록하더라도 OAuth2ResourceServer에서 따로 필드를 선언한 다음 (@Autowired private RSAKey rsaKey;)@Autowired 또는 생성자와 같은 방법으로 외부에서 주입받은 다음 파라미터로 넘겨야 되는거 아닌가요??

authorization-server 라이브러리 질문이 있습니다.

0

78

1

loadUser 중 Missing attribute 'preferred_username' in attributes 에러 발생

0

79

2

JWT 조회 에 대한 질문

0

75

1

password grant 방식 에러 응답

0

91

3

FormLoginConfigure에서 생성하는 필터

0

79

2

현업에서 springboot를 3.5.5 를 사용해서 공부중인데...

0

287

2

Jdbc 관련 강의 및 깃헙 문의

0

78

1

OAuth2AuthorizedClient 이해 및 활용 강의 내용 질문

0

209

1

UserInfo 엔드포인트 요청 실습

0

75

1

RFC 문서에서의 AccessToken 발급 방식 궁금한점

0

151

1

강의자료.zip 를 다운로드 받았는데 압축이 풀리지 않습니다. 확인 부탁드려요

0

140

2

OIDC SSO 관련 질문 입니다.

0

131

1

AuthenticationEntryPoint 강의 누락 문의

0

123

1

cors설정방법

0

116

1

jwt decoder 토큰 검증 시 질문

0

222

1

클라이언트에서 userinfo 엔드포인트 호출 시 질문

0

187

2

JOSE 구성요소의 api에 관한 질문

0

141

2

스프링 부트 3버전으로 따라가시는 분들 참고하세요

1

532

1

CustomOAuth2AuthenticationFilter 구현 중 질문

0

146

2

AuthenticationManager 생성시점

0

118

1

FormLogin과 Oauth2Client 둘 중 사용하는 시점

0

128

1

postman userinfo 엔드포인트 질문

0

136

2

강의 수강신청하고 듣기 전입니다 질문있습니다.

0

115

1

인증 코드를 통해 발급 받은 토큰의 관리

0

200

1