SpringBoot Security не заносит в белый список конечные точки входа - PullRequest
0 голосов
/ 13 апреля 2020

Я пытался запустить пример приложения SpringBoot и запустить его вместе с SpringBoot Security + JWT, который помог мне справиться с ситуацией с безопасностью. (Исходный код можно найти здесь: https://github.com/vaddipar/groclist)

Я неукоснительно следовал учебнику https://youtu.be/X80nJ5T7YpE?list=WL и настроил всю конфигурацию безопасности SpringBoot.

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

My WebSecurityConfig приведен ниже. Он имеет конфигурацию для внесения в белый список логина и регистрации конечных точек, но он не работает. Может кто-нибудь взглянуть и дать понять, что здесь происходит не так.

@EnableWebSecurity
class WebSecurityConfig extends WebSecurityConfigurerAdapter {
    @Autowired
    private UserDetailsService myUserDetailsService;
    @Autowired
    private JwtRequestFilter jwtRequestFilter;

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

    @Bean
    public PasswordEncoder passwordEncoder() {
        return NoOpPasswordEncoder.getInstance();
    }

    @Override
    @Bean
    public AuthenticationManager authenticationManagerBean() throws Exception {
        return super.authenticationManagerBean();
    }

    @Override
    protected void configure(HttpSecurity httpSecurity) throws Exception {
        httpSecurity.csrf().disable()
                .anonymous().and()
                .authorizeRequests().antMatchers("/login").permitAll().and()
                .authorizeRequests().antMatchers("/register").permitAll()
                .anyRequest().authenticated()
                .and()
                .exceptionHandling().and().sessionManagement()
                .sessionCreationPolicy(SessionCreationPolicy.STATELESS);
        httpSecurity.addFilterBefore(jwtRequestFilter, UsernamePasswordAuthenticationFilter.class);

    }

}

1 Ответ

0 голосов
/ 15 апреля 2020

Не используйте логин в качестве конечной точки вместе с пружинной безопасностью. Вместо этого используйте аутентификацию или вход, и все должно работать нормально.

...