Reactive-Spring-Security-5.1.3.RELEASE, несколько авторизаций - PullRequest
0 голосов
/ 20 февраля 2019

У нас есть некоторые конечные точки, которые защищены, и прежде чем получить к ним доступ, мы проверяем, что jws работает правильно.Чтобы сделать это, мы определили SecurityContext, который на самом деле сохраняет Poh Auth и управляет им вниз по потоку в контроллере.Конфигурация SecurityWebFilterChain выглядит следующим образом:

@Bean
public SecurityWebFilterChain securityWebFilterChain(ServerHttpSecurity http) {
    return http.csrf().disable()
            .formLogin().disable()
            .logout().disable()
            .httpBasic().disable()
            .securityContextRepository(securityContext)
            .authorizeExchange()
            .anyExchange().authenticated()
            .and()
            .build();
}

Вызовы были сделаны изнутри, и мы только что проверили токен jws.

Сейчас некоторым внешним клиентам необходимо интегрироваться с нами, и нам нужнопроверить токен jwe.Дело в том, что каким-то образом нам нужно сообщить Spring-Security для проверки существующих конечных точек jws и новых jwe.

Я попытался указать несколько сопоставлений безопасности, но это не удалось :(. У вас есть другие предложения?

1 Ответ

0 голосов
/ 20 февраля 2019

Вы можете выставить более одного боба.Я рекомендую указать заказ:

@Bean
@Order(1)
public SecurityWebFilterChain first(ServerHttpSecurity http) {
    http
        .securityMatcher(...)
        ...

    return http.build();
}

@Bean
@Order(2)
public SecurityWebFilterChain second(ServerHttpSecurity http) {
   http
       .securityMatcher(...)
       ...

   return http.build();
}

В качестве примечания, Spring Security поставляется с поддержкой реактивной проверки токенов JWS, и вы можете удалить несколько шаблонов, используя их.

...