Login page technically functional.

This commit is contained in:
etc404
2026-03-10 18:45:37 -06:00
parent fd6cacd13c
commit dd55101486
3 changed files with 29 additions and 2 deletions
@@ -2,8 +2,10 @@ package com.example.demo.config;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.security.web.SecurityFilterChain;
@Configuration @Configuration
public class SecurityConfig { public class SecurityConfig {
@@ -11,4 +13,20 @@ public class SecurityConfig {
public PasswordEncoder passwordEncoder() { public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder(); return new BCryptPasswordEncoder();
} }
@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
http
.authorizeHttpRequests(auth -> auth
.requestMatchers("/login", "/css/**").permitAll()
.anyRequest().authenticated()
)
.formLogin(form -> form
.loginPage("/login")
// .defaultSuccessUrl("/", true)
.permitAll()
)
.logout(logout -> logout.permitAll());
return http.build();
}
} }
@@ -12,4 +12,9 @@ public class SiteController {
//model.addAttribute("allemplist", employeeServiceImpl.getAllEmployee()); //model.addAttribute("allemplist", employeeServiceImpl.getAllEmployee());
return "home"; return "home";
} }
@GetMapping("/login")
public String viewLoginPage(Model model) {
return "login";
}
} }
+6 -2
View File
@@ -18,9 +18,13 @@
<main class="main-content"> <main class="main-content">
<div class="login-box"> <div class="login-box">
<h2>Log In</h2> <h2>Log In</h2>
<form action="/login" method="post"> <div th:if="${param.error}">
Invalid username and password.</div>
<div th:if="${param.logout}">
You have been logged out.</div>
<form th:action="@{/login}" method="post">
<label for="username">Username</label> <label for="username">Username</label>
<input type="text" id="user" name="user" required> <input type="text" id="username" name="username" required>
<label for="password">Password</label> <label for="password">Password</label>
<input type="password" id="password" name="password" required> <input type="password" id="password" name="password" required>