Rework login process & implement MFA

This commit is contained in:
William Bouzourène 2024-12-22 16:54:42 +01:00
parent ad2467b72d
commit cc4135d14b
7 changed files with 297 additions and 56 deletions

10
main.go
View file

@ -81,17 +81,21 @@ func main() {
// Middlewares
app.Use(middlewares.AuthMiddleware)
app.Use("/login", middlewares.DenyAuthMiddleware)
app.Use(middlewares.WelcomeMiddleware)
app.Use(middlewares.MfaEnrollMiddleware)
app.Use(middlewares.MfaVerifyMiddleware)
// Controllers
app.Get("/", controllers.Homepage)
app.Get("/login", controllers.LoginForm)
app.Post("/login", controllers.LoginProcess)
app.Post("/login", controllers.LoginForm)
app.Get("/logout", controllers.LogoutProcess)
app.Get("/welcome", controllers.WelcomePage)
app.Post("/welcome", controllers.WelcomePage)
app.Get("/mfa/totp/enroll", controllers.TotpEnrollPage)
app.Get("/totp/enroll", controllers.TotpEnrollPage)
app.Post("/totp/enroll", controllers.TotpEnrollPage)
app.Get("/totp/verify", controllers.TotpVerifyPage)
app.Post("/totp/verify", controllers.TotpVerifyPage)
listenAddr := fmt.Sprintf(
"%s:%d",