Мне нужно защитить все остальные конечные точки на нашем сервере ресурсов, кроме конечных точек, которые начинаются с /unsecured
. Поэтому запросы, подобные следующим, должны быть разрешены для всех:
/unsecured/foo/bar
/unsecured
- ...
но такие запросы:
/foo/unsecured/bar
/foo/bar
- ...
должны требовать аутентификации.
@Configuration
@EnableResourceServer
public class OAuth2ResourceServerConfig extends ResourceServerConfigurerAdapter {
@Override
public void configure(HttpSecurity security) throws Exception {
security
.authorizeRequests(authorizeRequests -> {
authorizeRequests.antMatchers("unsecured/**").permitAll();
authorizeRequests.anyRequest().authenticated();
});
}
}
Но в приведенной выше конфигурации все конечные точки требуют аутентификации.
Это ответ, который я получаю при попытке доступа к незащищенной конечной точке:
код 401
{
"error": "unauthorized",
"error_description": "Full authentication is required to access this resource"
}