source: phonelux-backend/src/main/java/finki/it/phoneluxbackend/security/configs/WebSecurityConfig.java@ dbd4834

Last change on this file since dbd4834 was dfd5d87, checked in by Marko <Marko@…>, 22 months ago

Registration logic with confirmation token implemented

  • Property mode set to 100644
File size: 2.1 KB
Line 
1package finki.it.phoneluxbackend.security.configs;
2
3import finki.it.phoneluxbackend.services.UserService;
4import lombok.AllArgsConstructor;
5import org.springframework.context.annotation.Configuration;
6import org.springframework.security.authentication.dao.DaoAuthenticationProvider;
7import org.springframework.security.config.annotation.SecurityBuilder;
8import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
9import org.springframework.security.config.annotation.web.WebSecurityConfigurer;
10import org.springframework.security.config.annotation.web.builders.HttpSecurity;
11import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
12import org.springframework.security.config.annotation.web.configuration.WebSecurityConfiguration;
13import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
14import org.springframework.security.config.annotation.web.configuration.WebSecurityCustomizer;
15import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
16import org.springframework.security.web.SecurityFilterChain;
17
18@Configuration
19@AllArgsConstructor
20@EnableWebSecurity
21public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
22
23 private final UserService userService;
24 private final BCryptPasswordEncoder bCryptPasswordEncoder;
25
26 @Override
27 protected void configure(HttpSecurity http) throws Exception {
28 http
29 .csrf().disable()
30 .authorizeRequests()
31 .antMatchers("/registration/**")
32 .permitAll()
33 .anyRequest()
34 .authenticated().and()
35 .formLogin();
36
37 }
38
39 @Override
40 protected void configure(AuthenticationManagerBuilder auth) throws Exception {
41 auth.authenticationProvider(daoAuthenticationProvider());
42 }
43
44
45 public DaoAuthenticationProvider daoAuthenticationProvider(){
46 DaoAuthenticationProvider provider = new DaoAuthenticationProvider();
47 provider.setPasswordEncoder(bCryptPasswordEncoder);
48 provider.setUserDetailsService(userService);
49 return provider;
50 }
51
52}
Note: See TracBrowser for help on using the repository browser.