FEAT : Mise en place de l'architecture + instription d'un utilisateur

This commit is contained in:
2025-12-01 12:14:57 +01:00
parent c76592aa65
commit 6f9bbe47ab
41 changed files with 672 additions and 3 deletions

View File

@@ -0,0 +1,24 @@
package local.epul4a.fotosharing.security;
import local.epul4a.fotosharing.model.Utilisateur;
import local.epul4a.fotosharing.repository.UtilisateurRepository;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.stereotype.Service;
@Service
public class CustomUserDetailsService implements UserDetailsService {
private final UtilisateurRepository utilisateurRepository;
public CustomUserDetailsService(UtilisateurRepository utilisateurRepository) {
this.utilisateurRepository = utilisateurRepository;
}
@Override
public CustomUserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
Utilisateur u = utilisateurRepository.findByEmail(username)
.orElseThrow(() -> new UsernameNotFoundException("Utilisateur introuvable: " + username));
return new CustomUserDetails(u);
}
}