diff --git a/Watcher/Controllers/AuthController.cs b/Watcher/Controllers/AuthController.cs index 16f363e..b24110d 100644 --- a/Watcher/Controllers/AuthController.cs +++ b/Watcher/Controllers/AuthController.cs @@ -55,27 +55,36 @@ public class AuthController : Controller if (!ModelState.IsValid) return View(model); - var user = await _context.Users.FirstOrDefaultAsync(u => u.Username == model.Username); - if (user == null || !BCrypt.Net.BCrypt.Verify(model.Password, user.Password)) + try { - ModelState.AddModelError("", "Benutzername oder Passwort ist falsch."); - return View(); + var user = await _context.Users.FirstOrDefaultAsync(u => u.Username == model.Username); + if (user == null || !BCrypt.Net.BCrypt.Verify(model.Password, user.Password)) + { + ModelState.AddModelError("", "Benutzername oder Passwort ist falsch."); + return View(model); + } + + var claims = new List + { + new Claim(ClaimTypes.Name, user.Username), + new Claim(ClaimTypes.NameIdentifier, user.Id.ToString()), + }; + + var identity = new ClaimsIdentity(claims, "local"); + var principal = new ClaimsPrincipal(identity); + + await HttpContext.SignInAsync("Cookies", principal); + + _logger.LogInformation("lokaler User angemeldet: " + user.Username); + + return Redirect("/"); } - - var claims = new List + catch (Exception ex) { - new Claim(ClaimTypes.Name, user.Username), - new Claim(ClaimTypes.NameIdentifier, user.Id.ToString()), - }; - - var identity = new ClaimsIdentity(claims, "local"); - var principal = new ClaimsPrincipal(identity); - - await HttpContext.SignInAsync("Cookies", principal); - - _logger.LogInformation("lokaler User angemeldet: " + user.Username); - - return Redirect("/"); + _logger.LogError(ex, "Fehler beim Login. User: {UserName}", model.Username); + ModelState.AddModelError("", "Es ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut."); + return View(model); + } } @@ -107,8 +116,4 @@ public class AuthController : Controller return Redirect("/"); // nur als Fallback } - - - - } diff --git a/Watcher/Views/Server/Details.cshtml b/Watcher/Views/Server/Details.cshtml index 2a8be81..3b05245 100644 --- a/Watcher/Views/Server/Details.cshtml +++ b/Watcher/Views/Server/Details.cshtml @@ -35,9 +35,6 @@