This commit is contained in:
Parpaillax
2024-04-23 15:40:15 +02:00
3 changed files with 21 additions and 13 deletions

View File

@@ -38,9 +38,4 @@ public class AccueilController {
return "accueil";
}
@GetMapping("/login")
public String login(Model modele) {
return "login";
}
}

View File

@@ -31,7 +31,7 @@ public class ProfileController {
// Obtenez les détails de l'utilisateur authentifié
String username = authentication.getName();
// Utilisez le service approprié pour récupérer les informations de l'utilisateur à partir du nom d'utilisateur
UserProfil userProfile = userService.utilisateurByName("Jojo");
UserProfil userProfile = userService.userByName("Jojo");
// Ajoutez les informations du profil à l'objet Model pour les afficher dans la page HTML
model.addAttribute("user", new UserProfil());
model.addAttribute("userProfile", userProfile);
@@ -47,7 +47,7 @@ public class ProfileController {
// Obtenez les détails de l'utilisateur authentifié
String username = authentication.getName();
// Utilisez le service approprié pour récupérer les informations de l'utilisateur à partir du nom d'utilisateur
UserProfil userProfile = userService.utilisateurByName("Jojo");
UserProfil userProfile = userService.userByName("Jojo");
System.out.println(userProfile.getId());
//Supprimer le compte
userService.deleteUtilisateur(userProfile.getId());

View File

@@ -4,27 +4,40 @@ 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.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.security.crypto.factory.PasswordEncoderFactories;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.security.web.SecurityFilterChain;
import org.springframework.security.web.util.matcher.AntPathRequestMatcher;
@Configuration
@EnableWebSecurity
public class WebSecurityConfig {
public class WebSecurityConfig{
@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
http.authorizeHttpRequests((requests) -> requests
.requestMatchers("/", "/accueil").permitAll()
.requestMatchers("/accueil", "/login", "/inscription/**", "/searchArticle", "/profile/**").permitAll()
http.authorizeHttpRequests((requests) -> requests.requestMatchers("/", "/accueil").permitAll()
.requestMatchers("/login").permitAll()
.requestMatchers("/css/**", "/images/**", "/assets/**", "/img/**", "/js/**").permitAll()
.requestMatchers("/article/**").authenticated()
.requestMatchers("/admin").hasRole("ADMIN")
.anyRequest().authenticated())
.formLogin((form) -> form.loginPage("/login").defaultSuccessUrl("/", true))
.logout((logout) -> logout.clearAuthentication(true).invalidateHttpSession(true)
.deleteCookies("JSESSIONID").logoutSuccessUrl("/logout")
.logout((logout) -> logout.clearAuthentication(true).invalidateHttpSession(true).deleteCookies("JSESSIONID").logoutSuccessUrl("/filmLogout")
.logoutRequestMatcher(new AntPathRequestMatcher("/logout")).permitAll());
return http.build();
}
@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
// @Bean
// public PasswordEncoder passwordEncoder() {
// return PasswordEncoderFactories.createDelegatingPasswordEncoder();
// }
}