jeudi 17 septembre 2020

Spring Boot Security - allow without authentication

Spring boot security allow anonymous user

I am trying configure Spring Boot Security to allow anonymous user reach all URLs except one. By default user and generated security password by Spring. I need just one page for maintanance application I already tried a lot tips and tutorials.

But Spring still required authetification for all pages.
My current security config

@EnableWebSecurity
@Configuration
public class SecurityConf extends WebSecurityConfigurerAdapter {
    @Override
    public void configure(HttpSecurity http) throws Exception {
        http
        .csrf()
        .disable()
        .authorizeRequests()
        .anyRequest()
        .anonymous()
        .antMatchers("/secure")
        .authenticated();
    }
}

Web configuration

@Configuration
@EnableWebMvc
@EnableAsync
public class WebConf implements WebMvcConfigurer {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        WebMvcConfigurer.super.addResourceHandlers(registry);
        registry.addResourceHandler("/webjars/**").addResourceLocations("/webjars/**");
    }   
    @Bean
    public Executor asyncExecutor() {
        ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
        executor.setCorePoolSize(5);
        executor.setMaxPoolSize(5);
        executor.setQueueCapacity(500);
        executor.setThreadNamePrefix("Asynchronous Process-");
        executor.initialize();
        return executor;
    }   
}

And main method

@ComponentScan
@SpringBootApplication
@EnableScheduling
public class MainServiceApplication {
    public static void main(String[] args) {
        SpringApplication.run(MainServiceApplication.class, args);
    }
}

I tried

.permitAll()
.anonymous()

without success.




Aucun commentaire:

Enregistrer un commentaire