Задать вопрос
@ScRsa
Delphi/Oracle Изучаю JAVA

Как правильно отменить авторизацию после истечения времени жизни токена?

Имеется сервис авторизации на 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...."

Как правильно настроить авторизацию чтобы по истечению времени жизни токена, пользователя перебрасывало заново на страницу авторизации?
  • Вопрос задан
  • 796 просмотров
Подписаться 4 Оценить Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы