patch fin projet

This commit is contained in:
jleroy
2024-05-02 14:41:32 +02:00
parent e576d52dfb
commit d61797ba02
3 changed files with 28 additions and 14 deletions

View File

@@ -48,7 +48,6 @@ public class AccueilController {
public String viewAccueil(HttpServletRequest request, @AuthenticationPrincipal UserDetails userDetails,
@RequestParam(defaultValue = "1") int page, @RequestParam(defaultValue = "6") int size, Model model,
HttpSession session) {
logger.error("test du logger");
// Récupérer les critères de recherche de la session
String searchTitle = (String) session.getAttribute("searchTitle");

View File

@@ -65,11 +65,7 @@ public class ForgotPasswordRepositoryImpl implements ForgotPasswordRepository {
@Override
public void setForgotPasswords(String email) {
//Générer un code
StringBuilder linkCreate = new StringBuilder(50);
for (int i = 0; i < 50; i ++){
linkCreate.append(keychain.charAt(randomValue.nextInt(keychain.length())));
}
String token = TokenGenreate();
//Récupérer la date actuelle plus 10 minutes en plus
Calendar dateNow = Calendar.getInstance();
Calendar dateAgo = Calendar.getInstance();
@@ -78,18 +74,39 @@ public class ForgotPasswordRepositoryImpl implements ForgotPasswordRepository {
String sql = "INSERT INTO FORGOT (email, lien, dateCreate, dateExpire) VALUES (:email, :lien, :dateCreate, :dateExpire)";
MapSqlParameterSource parameters = new MapSqlParameterSource();
parameters.addValue("email", email);
parameters.addValue("lien", linkCreate.toString());
parameters.addValue("lien", token);
parameters.addValue("dateCreate", dateNow.getTime());
parameters.addValue("dateExpire", dateAgo.getTime());
namedParameterJdbcTemplate.update(sql, parameters);
//Envoyer un email
String link = "https://eni.enchere.horya.fr/forgotPassword?link=" + linkCreate.toString();
String linkLocal = "http://localhost:8800/forgotPassword?link=" + linkCreate.toString();
String link = "https://eni.enchere.horya.fr/forgotPassword?link=" + token;
String linkLocal = "http://localhost:8800/forgotPassword?link=" + token;
SimpleMailMessage message = new SimpleMailMessage();
message.setFrom("support@horya.fr");
message.setTo(email);
message.setSubject("ENI Enchere - Demmande de changement de mot de passe");
message.setText("Bonjour,\n\nVous avez demandé une réinitialisation de votre mot de passe. Veuillez utiliser le lien suivant pour procéder à la réinitialisation : " + link + "\n\n" + linkLocal);
message.setText("Bonjour,\n\nVous avez demandé une réinitialisation de votre mot de passe. Veuillez utiliser le lien suivant pour procéder à la réinitialisation : " + link + "\nOU\n" + linkLocal);
javaMailSender.send(message);
}
private String TokenGenreate(){
//Déclaration de variable
StringBuilder linkCreate = new StringBuilder(50);
String sql = "SELECT * FROM FORGOT WHERE lien = ?";
boolean isValide = false;
//Traitement
while (isValide == false){
//Générer un code
for (int i = 0; i < 50; i ++){
linkCreate.append(keychain.charAt(randomValue.nextInt(keychain.length())));
}
//Vérifier existance dans la base de donnée
try {
jdbcTemplate.queryForObject(sql, new ForgotPasswordRepositoryImpl.ForgotPasswordRowMapper(), linkCreate.toString());
} catch (EmptyResultDataAccessException e) {
isValide = true;
}
}
return linkCreate.toString();
}
}

View File

@@ -10,8 +10,6 @@ import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.security.web.SecurityFilterChain;
import org.springframework.security.web.util.matcher.AntPathRequestMatcher;
import static javax.management.Query.and;
@Configuration
@EnableWebSecurity
public class WebSecurityConfig {