Мне нужна ваша помощь в oauth 2.
Клиент Android делает запрос, где он помещает токен доступа, и через некоторое время он не может отправить запрос, и в логах я вижу «не удалось найти токен доступа для токена», но при перезагрузке сервера тот же токен работает.
Я не могу найти проблему уже 10 дней.
У меня есть 1 сервер безопасности и 2 сервера ресурсов, в то же время первый сервер ресурсов с одним и тем же токеном не может отправить запрос, а другой может, сервер безопасности одинаков для обоих серверов ресурсов.
Ресурсный сервер
@EnableResourceServer
@Configuration
public class OAuth2Configuration extends ResourceServerConfigurerAdapter{
@Autowired
@Qualifier("dataSource")
private DataSource dataSource;
@Bean
public TokenStore tokenStore() {
return new JdbcTokenStore(dataSource);
}
@Bean
@Primary
public DefaultTokenServices tokenService() {
DefaultTokenServices defaultTokenServices = new DefaultTokenServices();
defaultTokenServices.setTokenStore(tokenStore());
defaultTokenServices.setSupportRefreshToken(true);
return defaultTokenServices;
}
}
Сервер безопасности
@Configuration
@EnableResourceServer
public class Oauth2Configuration extends ResourceServerConfigurerAdapter {
@Autowired
@Qualifier("dataSource")
private DataSource dataSource;
@Bean
public TokenStore tokenStore() {
return new JdbcTokenStore(dataSource);
}
@Bean
public PasswordEncoder passwordEncoder(){
return new BCryptPasswordEncoder();
}
@Bean
@Primary
public DefaultTokenServices tokenService() {
DefaultTokenServices defaultTokenServices = new DefaultTokenServices();
defaultTokenServices.setTokenStore(tokenStore());
defaultTokenServices.setSupportRefreshToken(true);
return defaultTokenServices;
}
}