This commit is contained in:
2025-08-22 22:39:42 +02:00
parent f7e7278253
commit 3df7c60cf8
2 changed files with 27 additions and 25 deletions

View File

@@ -55,27 +55,36 @@ public class AuthController : Controller
if (!ModelState.IsValid) if (!ModelState.IsValid)
return View(model); return View(model);
var user = await _context.Users.FirstOrDefaultAsync(u => u.Username == model.Username); try
if (user == null || !BCrypt.Net.BCrypt.Verify(model.Password, user.Password))
{ {
ModelState.AddModelError("", "Benutzername oder Passwort ist falsch."); var user = await _context.Users.FirstOrDefaultAsync(u => u.Username == model.Username);
return View(); 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<Claim>
{
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("/");
} }
catch (Exception ex)
var claims = new List<Claim>
{ {
new Claim(ClaimTypes.Name, user.Username), _logger.LogError(ex, "Fehler beim Login. User: {UserName}", model.Username);
new Claim(ClaimTypes.NameIdentifier, user.Id.ToString()), ModelState.AddModelError("", "Es ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut.");
}; return View(model);
}
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("/");
} }
@@ -107,8 +116,4 @@ public class AuthController : Controller
return Redirect("/"); // nur als Fallback return Redirect("/"); // nur als Fallback
} }
} }

View File

@@ -35,9 +35,6 @@
</dl> </dl>
</div> </div>
<div class="card-footer text-end"> <div class="card-footer text-end">
<a href="/Download/File/Linux/heartbeat" class="btn btn-success">
🖥️ Linux Agent
</a>
<a asp-action="EditServer" asp-route-id="@Model.Id" class="btn btn-outline-primary me-2"> <a asp-action="EditServer" asp-route-id="@Model.Id" class="btn btn-outline-primary me-2">
<i class="bi bi-pencil"></i> Bearbeiten <i class="bi bi-pencil"></i> Bearbeiten
</a> </a>