Spring Security - подстановочные знаки / совпадения в правилах авторизации - PullRequest
0 голосов
/ 23 апреля 2020

При настройке безопасности моего приложения Spring Boot я хотел защитить части API в зависимости от введенного там PathVariable. Моя текущая конфигурация выглядит следующим образом:

@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {

//not important

@Override
public void configure(HttpSecurity http) throws Exception {
    http.cors();
    http.authorizeRequests()
            .mvcMatchers("/api").authenticated()
            .mvcMatchers("/api/TEST").hasAuthority("SCOPE_dep:TEST")
            .and().oauth2ResourceServer().jwt();
}
}

В конечной точке 'api / {PathVariable}' я хочу настроить ее, убедившись, что кто-то с полномочиями 'SCOPE_dep: TEST' может получить доступ конечная точка 'api / TEST', кто-то с полномочиями 'SCOPE_dep: TEST2' может получить доступ к конечной точке 'api / TEST2', даже если разрешено использовать более одной такой конечной точки для пользователя, который имеет несколько из этих полномочий.

Is Есть ли способ сделать это, используя тип подстановочного знака / совпадения, о котором я не знаю, или единственная возможность жестко закодировать все эти различные авторитеты?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...