Имеется сервис авторизации на Spring Security
public void configure(ClientDetailsServiceConfigurer clients) throws Exception {
clients.inMemory()
.withClient("...")
.secret("...")
.autoApprove(true)
.authorizedGrantTypes("password", "authorization_code", "refresh_token")
.scopes("read","write")
.accessTokenValiditySeconds(5)
.refreshTokenValiditySeconds(60);
}
Имеется клиент
public void configure(HttpSecurity http) throws Exception {
http
.csrf().disable()
.logout().deleteCookies("JSESSIONID").invalidateHttpSession(true).clearAuthentication(true).permitAll()
.and().antMatcher("/**").authorizeRequests()
.antMatchers("/login", "/logout").permitAll()
.anyRequest().authenticated();
}
Клиент авторизуется и без проблем обновляет авторизацию с использованием refresh_token, но если время жизни refresh_token истекло клиент продолжает считать что пользователь авторизован. Хотя сервис авторизации ему вернул ошибку "Handling error: InvalidTokenException, Invalid refresh token (expired): eyJhbG...."
Как правильно настроить авторизацию чтобы по истечению времени жизни токена, пользователя перебрасывало заново на страницу авторизации?