Ответ Spring Boot Rest на возвращаемый логин. jsp - PullRequest
0 голосов
/ 05 апреля 2020

enter image description hereenter image description here

Я изучаю Spring Boot. Я создал образец веб-приложения Spring Boot с Безопасность Spring Boot , и он работает отлично.
Теперь я хочу добавить функциональность Rest Webservices в то же веб-приложение.

ВЫПУСК: Когда я пытаюсь получить доступ к любому API, в ответ я получаю логин. jsp.
Требование: Я хочу JSON respnse аутентификация и авторизация не требуются.
Какие изменения мне нужно сделать для достижения этой цели.


WebSecurityConfig:

@Configuration  
@EnableWebSecurity <br>
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {

    @Qualifier("userDetailsServiceImpl") <br>
    @Autowired <br>
    private UserDetailsService userDetailsService;

    @Bean
    public BCryptPasswordEncoder bCryptPasswordEncoder() {
        return new BCryptPasswordEncoder();
    }

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
            .authorizeRequests()
                .antMatchers("/resources/**", "/registration").permitAll()
                .anyRequest().authenticated()
                .and()
            .formLogin()
                .loginPage("/login")
                .permitAll()
                .and()
            .logout()
                .permitAll();
    }

    @Bean
    public AuthenticationManager customAuthenticationManager() throws Exception {
        return authenticationManager();
    }

    @Autowired
    public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
        auth.userDetailsService(userDetailsService).passwordEncoder(bCryptPasswordEncoder());
    }
}

1 Ответ

1 голос
/ 05 апреля 2020

Добавьте этот путь к antMatchers, чтобы разрешить все,

antMatchers("/resources/**", "/registration", "/api/user/**").permitAll()

, это отключит безопасность для этого URL

...