Почему JdbcClientTokenServices не сохраняет маркеры обновления? - PullRequest
0 голосов
/ 14 октября 2019

У меня есть приложение Spring, которое действует как клиент OAuth2. Я реализовал JdbcClientTokenServices для сохранения токенов для каждого пользователя, который успешно проходит аутентификацию.

@Bean
public OAuth2RestTemplate restTemplate(OAuth2ClientContext clientContext) {
    OAuth2RestTemplate template = new OAuth2RestTemplate(resource(), clientContext);
    AccessTokenProviderChain accessTokenProvider = new AccessTokenProviderChain(
            Collections.<AccessTokenProvider>singletonList(
                    new AuthorizationCodeAccessTokenProvider()
            ));
    accessTokenProvider.setClientTokenServices(clientTokenServices());
    accessTokenProvider.supportsRefresh(resource());
    template.setAccessTokenProvider(accessTokenProvider);
    return template;
}

@Bean
public JdbcClientTokenServices clientTokenServices() {
    return new JdbcClientTokenServices(dataSource);
}

В этом коде используется таблица oauth_client_token . Когда я искал содержимое в этой таблице, я заметил, что он сохраняет только маркер доступа? Мне было интересно, почему токен обновления не сохраняется, а токен обновления должен быть все же дольше, чем токен доступа.

...