Add token revocation endpoint
This commit is contained in:
@@ -26,7 +26,7 @@ Sistema bus kuriama naudojant modernias technologijas, o diegimas bus supaprasti
|
|||||||
|
|
||||||
**Registruoti naudotojai**
|
**Registruoti naudotojai**
|
||||||
1. Gali prisijungti prie sistemos.
|
1. Gali prisijungti prie sistemos.
|
||||||
2. ~~Gali atsijungti nuo sistemos.~~
|
2. Gali atsijungti nuo sistemos.
|
||||||
3. Gali įkelti naujus paveikslus.
|
3. Gali įkelti naujus paveikslus.
|
||||||
4. Gali redaguoti savo įkeltų paveikslų metaduomenis (žymas, aprašą).
|
4. Gali redaguoti savo įkeltų paveikslų metaduomenis (žymas, aprašą).
|
||||||
5. Gali ištrinti savo įkeltus paveikslus.
|
5. Gali ištrinti savo įkeltus paveikslus.
|
||||||
|
|||||||
@@ -79,4 +79,22 @@ public class AuthController(UserManager<User> userManager, ITokenService tokenSe
|
|||||||
var newRefreshToken = await tokenService.GenerateRefreshToken(user);
|
var newRefreshToken = await tokenService.GenerateRefreshToken(user);
|
||||||
return Ok(new TokenDto(AccessToken: accessToken, RefreshToken: newRefreshToken));
|
return Ok(new TokenDto(AccessToken: accessToken, RefreshToken: newRefreshToken));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Revokes the refresh token.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="dto">Data with refresh token</param>
|
||||||
|
/// <response code="204">If token was revoked successfully</response>
|
||||||
|
/// <response code="401">If refresh token is missing or is expired</response>
|
||||||
|
[HttpPost("revoke")]
|
||||||
|
[ProducesResponseType(StatusCodes.Status204NoContent)]
|
||||||
|
[ProducesResponseType(StatusCodes.Status401Unauthorized)]
|
||||||
|
public async Task<ActionResult<TokenDto>> Revoke(RefreshDto dto)
|
||||||
|
{
|
||||||
|
var token = await tokenService.GetRefreshTokenByValue(dto.RefreshToken);
|
||||||
|
if (token == null) return Unauthorized();
|
||||||
|
|
||||||
|
await tokenService.InvalidateRefreshToken(token);
|
||||||
|
return NoContent();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user