diff --git a/build.gradle b/build.gradle index 84e330d..f4815e9 100644 --- a/build.gradle +++ b/build.gradle @@ -23,6 +23,11 @@ dependencies { implementation 'org.springframework.boot:spring-boot-starter-validation' implementation 'org.springframework.boot:spring-boot-starter-jdbc' implementation 'org.mariadb.jdbc:mariadb-java-client:2.2.0' + //Securité + implementation 'org.springframework.boot:spring-boot-starter-security' + implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity6' + testImplementation 'org.springframework.security:spring-security-test' + testImplementation 'org.springframework.boot:spring-boot-starter-test' } tasks.named('test') { diff --git a/src/main/java/fr/eni/enchere/controllers/AccueilController.java b/src/main/java/fr/eni/enchere/controllers/AccueilController.java index 4e9b0bb..b577289 100644 --- a/src/main/java/fr/eni/enchere/controllers/AccueilController.java +++ b/src/main/java/fr/eni/enchere/controllers/AccueilController.java @@ -12,7 +12,6 @@ import org.springframework.web.bind.annotation.GetMapping; public class AccueilController { private static final Logger logger = LoggerFactory.getLogger(AccueilController.class); - private ArticleService articleService; public AccueilController(ArticleService articleService) { @@ -22,10 +21,13 @@ public class AccueilController { @GetMapping({"/", "/accueil"}) public String viewAccueil(Model model) { - model.addAttribute("articles", articleService.findAllArticle()); - return "accueil"; } + @GetMapping("/login") + public String login(Model modele) { + return "login"; + } + } diff --git a/src/main/java/fr/eni/enchere/security/WebSecurityConfig.java b/src/main/java/fr/eni/enchere/security/WebSecurityConfig.java index 1862200..7036e23 100644 --- a/src/main/java/fr/eni/enchere/security/WebSecurityConfig.java +++ b/src/main/java/fr/eni/enchere/security/WebSecurityConfig.java @@ -15,12 +15,10 @@ public class WebSecurityConfig { @Bean public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception { - http.authorizeHttpRequests((requests) -> requests.requestMatchers("/", "/films", "/filmotheque", "/film").permitAll() - .requestMatchers("/filmLogout", "/login").permitAll() - .requestMatchers("/css/**", "/images/**").permitAll() - .requestMatchers("/genres").hasRole("ADMIN") - .requestMatchers("/ajoutFilm") - .hasAnyRole("MEMBRE", "ADMIN") + http.authorizeHttpRequests((requests) -> requests.requestMatchers("/", "/accueil").permitAll() + .requestMatchers("/accueil", "/login", "/inscription").permitAll() + .requestMatchers("/css/**", "/images/**", "/assets/**", "/img/**", "/js/**").permitAll() + .requestMatchers("/admin").hasRole("ADMIN") .anyRequest().authenticated()) .formLogin((form) -> form.loginPage("/login").defaultSuccessUrl("/", true)) .logout((logout) -> logout.clearAuthentication(true).invalidateHttpSession(true) diff --git a/src/main/resources/static/favicon.ico b/src/main/resources/static/img/favicon.ico similarity index 100% rename from src/main/resources/static/favicon.ico rename to src/main/resources/static/img/favicon.ico diff --git a/src/main/resources/static/logo.png b/src/main/resources/static/img/logo.png similarity index 100% rename from src/main/resources/static/logo.png rename to src/main/resources/static/img/logo.png diff --git a/src/main/resources/templates/accueil.html b/src/main/resources/templates/accueil.html index 7edb53d..4172347 100644 --- a/src/main/resources/templates/accueil.html +++ b/src/main/resources/templates/accueil.html @@ -1,5 +1,5 @@ - +