Class AuthController
- Namespace
- DataService.Server.Controllers
- Assembly
- DataService.Server.dll
Controller zur Authentifizierung und Token-Verwaltung. Bietet Endpunkte für Login, Logout, Token-Validierung und Token-Refresh.
[ApiController]
[Route("api/[controller]")]
public class AuthController : ControllerBase
- Inheritance
-
AuthController
- Inherited Members
Constructors
AuthController(UserService, IConfiguration, RateLimitingService, TokenDenylistService)
Controller zur Authentifizierung und Token-Verwaltung. Bietet Endpunkte für Login, Logout, Token-Validierung und Token-Refresh.
public AuthController(UserService userService, IConfiguration configuration, RateLimitingService rateLimitingService, TokenDenylistService tokenDenylistService)
Parameters
userServiceUserServiceconfigurationIConfigurationrateLimitingServiceRateLimitingServicetokenDenylistServiceTokenDenylistService
Methods
Login(LoginRequest)
Authentifiziert einen Benutzer anhand von Benutzername und Passwort. Gibt ein JWT zurück, wenn die Anmeldung erfolgreich ist.
[HttpPost("Login")]
public Task<IActionResult> Login(LoginRequest request)
Parameters
requestLoginRequestDie Login-Daten (Benutzername, Passwort, RememberMe).
Returns
- Task<IActionResult>
Ein JWT-Token oder ein Fehlerstatus.
Logout()
Meldet den aktuell angemeldeten Benutzer ab und setzt das aktuelle Token auf eine Denylist.
[HttpPost("logout")]
[Authorize]
public IActionResult Logout()
Returns
- IActionResult
Ein Erfolgsstatus, unabhängig vom Logout-Erfolg.
RefreshToken()
Erstellt ein neues Token, wenn das aktuelle Token bald abläuft. Das alte Token wird auf eine Denylist gesetzt.
[HttpPost("refresh")]
[Authorize]
public IActionResult RefreshToken()
Returns
- IActionResult
Ein neues JWT oder ein Fehlerstatus.
ValidateToken()
Prüft, ob das aktuelle Token gültig ist.
[HttpGet("validate")]
[Authorize]
public IActionResult ValidateToken()
Returns
- IActionResult
Den Benutzernamen, der im Token enthalten ist.