Как заблокировать конечные точки по условию. AntMatchers не распознает переменные путиJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Гость
 Как заблокировать конечные точки по условию. AntMatchers не распознает переменные пути

Сообщение Гость »


У меня есть приложение Spring Boot со свойством в файле .properties. Я хотел бы иметь возможность блокировать/включать некоторые конечные точки в зависимости от состояния.

В настоящее время я создал два bean-компонента, аннотированных @ConditionalOnProperty, поэтому они включаются/отключаются в зависимости от значения.

Бин-компоненты содержат конфигурацию Spring Security.

Давайте возьмём такую ​​конфигурацию:

@Override protected void configure(HttpSecurity http) выдает исключение { http .antMatcher("/api/test/**") .authorizeRequests() .antMatchers("/api/test/{ID}").authenticated() .antMatchers("/api/test/hello/hello2").authenticated() .anyRequest().denyAll(); } Если внутри моего контроллера у меня есть три конечные точки:
[*]/api/test/{ID} [*]/api/test/hello/hello2 [*]/api/test/bye
бывает, что указав в Spring Security

.antMatchers("/api/test/{ID}").authenticated() /api/test/bye также включен (должен быть заблокирован, поскольку там есть denyAll()), поскольку Spring явно не знает, что может {ID} содержать. Поэтому я хотел понять, как можно заблокировать конечные точки, указав пути. Даже не используя Spring Security. Возможно, если есть альтернатива.

Я не хочу указывать все конечные точки одну за другой и применять правила к каждой, я хочу указать только ту, которую нужно «разблокировать», а все остальные блокируются автоматически.

Более того, я не хочу использовать регулярные выражения для переменных пути, поскольку в некоторых случаях переменные пути являются строками, и поэтому у меня может возникнуть та же проблема.
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ, комментарий, отзыв

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»