summaryrefslogtreecommitdiff
path: root/Controllers
diff options
context:
space:
mode:
authorHombreLaser <sebastian-440@live.com>2022-11-20 19:38:18 -0600
committerHombreLaser <sebastian-440@live.com>2022-11-20 19:38:18 -0600
commite587ec71da3f457a945c1d3c5d6cf8c89445cd11 (patch)
tree12ffa068fb158b4b008b3093b7c008ad49d84aad /Controllers
parent4d34da521dd05b16b25d1aa2de2567de9d920512 (diff)
Añadido método refresh a controlador de sesiones
Diffstat (limited to 'Controllers')
-rw-r--r--Controllers/UserAccountSessionsController.cs18
1 files changed, 16 insertions, 2 deletions
diff --git a/Controllers/UserAccountSessionsController.cs b/Controllers/UserAccountSessionsController.cs
index 1309c8e..217c05c 100644
--- a/Controllers/UserAccountSessionsController.cs
+++ b/Controllers/UserAccountSessionsController.cs
@@ -1,5 +1,5 @@
-using AutoMapper;
using Microsoft.AspNetCore.Identity;
+using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using BackendPIA.Forms;
using BackendPIA.Models;
@@ -11,12 +11,14 @@ namespace BackendPIA.Controllers {
[Route("api/")]
[ApiController]
public class AdministratorSessionsController : ControllerBase {
+ private readonly ApplicationDbContext _context;
private readonly ITokenGenerator _token_generator;
private readonly UserManager<UserAccount> _manager;
- public AdministratorSessionsController(ITokenGenerator token_generator, UserManager<UserAccount> manager) {
+ public AdministratorSessionsController(ITokenGenerator token_generator, UserManager<UserAccount> manager, ApplicationDbContext context) {
_token_generator = token_generator;
_manager = manager;
+ _context = context;
}
[HttpPost("login")]
@@ -29,5 +31,17 @@ namespace BackendPIA.Controllers {
return StatusCode(401, new InvalidLoginError(401, "Check your credentials"));
}
+
+ // [Authorize]
+ [HttpPost("refresh")]
+ public async Task<ActionResult<AuthenticationToken>> Refresh(AuthenticationToken form) {
+ RefreshTokenLogic logic = new RefreshTokenLogic(_token_generator, _manager, form);
+ var result = await logic.Call();
+
+ if(result)
+ return Ok(logic.Token);
+
+ return StatusCode(403, new ExpiredSessionError(401, "Check your refresh token"));
+ }
}
} \ No newline at end of file