ошибка 401 с токеном jwt с использованием новейшего okta-spring-boot-starter 2.1.2 с загрузкой spring 2.5.6

#spring-boot #okta

Вопрос:

использование этих версий зависимостей в API для проверки доступа к jwt:

 <okta-spring-boot-starter.version>2.1.2</okta-spring-boot-starter.version>
<spring-boot.version>2.5.6</spring-boot.version>
<spring-cloud.version>2020.0.4</spring-cloud.version>
 

У меня возникают проблемы с токенами jwt. используемый нами графический интерфейс реагирует с помощью @okta / okta-react 6. он выдает ошибки (401) аутентификации токенов jwt при вызове api, который использует вышеуказанные версии.

Если мы вернемся к okta-spring-boot-starter 2.0.0, это сработает. есть какие-нибудь идеи?

наша конфигурация безопасности выглядит следующим образом для части jwt:

 @Configuration
@EnableWebSecurity
public class SecurityConfig {
 

  @Order(2)
  @Configuration
  public static class NormalSecurity extends WebSecurityConfigurerAdapter {
...
    @Override
    protected void configure(HttpSecurity http) throws Exception {
      http
        .authorizeRequests()
        .antMatchers(ANT).permitAll()
        .antMatchers(withApi(ANT)).permitAll()
        .anyRequest().authenticated()
        .and()
        .oauth2ResourceServer().jwt();

  Okta.configureResourceServer401ResponseBody(http);
}
 

Комментарии:

1. Включите протоколирование: logging.level.org.springframework.security=DEBUG это должно помочь сузить круг проблем. Как настроено ваше приложение Spring Boot? Есть ли у вас WebSecurityConfigurerAdapter ответ, если да, то как он выглядит?

2. Похоже, вы создали проблему с GitHub: github.com/okta/okta-spring-boot/issues/360 Мы можем продолжить разговор там, а не на SO.