/** * */ package es.uv.garcosda.config; import java.util.Arrays; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; import org.springframework.security.core.userdetails.User; import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.provisioning.InMemoryUserDetailsManager; import org.springframework.security.web.SecurityFilterChain; @Configuration @EnableWebSecurity public class WebSecurityConfig { @Bean public PasswordEncoder passwordEncoder() { return new BCryptPasswordEncoder(); } @Bean public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception { http.authorizeHttpRequests() .requestMatchers("/").permitAll() .requestMatchers("/resources/**", "/webjars/**","/dist/**").permitAll() .anyRequest().authenticated() .and() .formLogin(); return http.build(); } @Bean public UserDetailsService userDetailsService() { return new InMemoryUserDetailsManager(Arrays.asList( User.withUsername("user") .password(passwordEncoder().encode("1234")) .roles("USER") .build(), User.withUsername("admin") .password(passwordEncoder().encode("1234")) .roles("USER") .build())); } }