Мне нужно использовать пользовательскую реализацию UserAuthenticationConverter для извлечения пользовательских объектов аутентификации.
Я использовал следующий способ:
Сначала я создал компонент для моего преобразователя доступа с требуемой реализацией UserAuthenticationConverter.
@Bean
public JwtAccessTokenConverter tokenEnhancer() {
final JwtAccessTokenConverter jwtConverter = new JwtAccessTokenConverter();
final DefaultAccessTokenConverter tokenConverter = new DefaultAccessTokenConverter();
tokenConverter.setUserTokenConverter(new CustomUserConverter());
jwtConverter.setAccessTokenConverter(tokenConverter);
return jwtConverter;
}
И после этого я установил на исходный RemoteTokenServices этот конвертер.
@Bean
@Primary
public RemoteTokenServices customRemoteTokenService(RemoteTokenServices remoteTokenServices)
{
remoteTokenServices.setAccessTokenConverter(tokenEnhancer());
return remoteTokenServices;
}
Я хочу спросить, является ли это правильным способом достижения этого, или есть лучший или рекомендуемый способ? Спасибо.