spring ошибка oauth Для доступа к этому ресурсу требуется полная аутентификация

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

@RestController
@EnableResourceServer
public class Controller extends BaseRestController{



    @RequestMapping(value="/api/v1/public/insertData", method=RequestMethod.POST)
    ResponseEntity<?> insertTPQueueData(TitleProcurementQueue queue,Authentication authentication) {
        return null;
    }

}

после добавления безопасности Spring oauth я получаю следующую ошибку для моего другого контроллера, использующего Spring Security

<oauth>
<error_description>
Full authentication is required to access this resource
</error_description>
<error>unauthorized</error>
</oauth>

Пожалуйста помоги


person john    schedule 31.07.2017    source источник
comment
предположим, вы ссылаетесь на этот сообщение на та же проблема. может быть полезно понять, что вы пропустили в своих конфигурациях.   -  person Rajith Pemabandu    schedule 01.08.2017


Ответы (1)


Когда вы устанавливаете безопасность в своем проекте, Spring реализует некоторые фильтры, такие как Cors, базовая аутентификация и т. Д. Поэтому вам нужно сообщить Spring, как применять безопасность в ваших ресурсах. введите здесь описание ссылки

нужно создать класс с @EnableWebSecurity и настроить следующим образом:

    protected void configure(HttpSecurity http) throws Exception {
    http
        .authorizeRequests()
        .antMatchers("/h2-console/**").permitAll()
        .antMatchers(HttpMethod.OPTIONS, "/**").permitAll()         
        .anyRequest().authenticated()
        .and()
            .httpBasic()
        .csrf().disable();

    http.headers().frameOptions().sameOrigin();

}
person Rodrigo Sene    schedule 31.07.2017