Spring Boot Security - дополнительные URL-адреса неавторизованы - PullRequest
0 голосов
/ 11 июля 2020

Я работаю над своим первым проектом Spring Security и изо всех сил пытаюсь решить эту ошибку. Я хочу, чтобы каждый URL-адрес, начинающийся с / user, был авторизован, а затем получил ответ, связанный с URL-адресом.

Это код конфигурации:

@Override
    protected void configure(HttpSecurity http) throws Exception {
        http.authorizeRequests()
            .antMatchers("/admin/**").hasRole("ADMIN")
            .antMatchers("/user/**").hasAnyRole("USER", "ADMIN")
            .anyRequest().permitAll()
            .and().httpBasic();
    }

Когда я получаю доступ к / user с помощью почтальона, я получаю ожидаемый ответ. Но когда я пытаюсь получить доступ к / user / foo на почтальоне, я получаю код ошибки 401: неавторизовано даже с действительным именем пользователя и паролем.

{
    "timestamp": "2020-07-11T12:38:17.805+00:00",
    "status": 401,
    "error": "Unauthorized",
    "message": "",
    "path": "/user/foo"
}

То же самое происходит с / admin / ... URL-адресами, / admin доступен, но / admin / foo не авторизован.

URL-адреса: / user / {username} и / admin / {username}. Считая foo именем пользователя. Я не уверен, правильно ли я использовал подстановочный знак.

Также / user / {username} применяется для методов GET, PUT, POST и DELETE.

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