public async Task <IActionResult> RefreshAuth(RefreshAccessRequest model)
        {
            var token = await _tokenService.VerifyRefreshToken(model.RefreshToken !);

            if (token == null)
            {
                return(this.Error(Errors.BadRefreshToken()));
            }

            var sub    = token.Subject;
            var claims = (await _authorizationService.Authorize(sub)).ToList();

            var newAccessToken  = _tokenService.GenerateAccessToken(claims);
            var newRefreshToken = await _tokenService.GenerateRefreshToken(sub);

            return(Ok(new NewTokenResponse(newAccessToken, newRefreshToken, DateTime.Now)));
        }
Beispiel #2
0
        public IActionResult AccessToken([FromBody] RefreshAccessRequest refreshAccessRequest)
        {
            var tokens = _jwtManager.Refresh(refreshAccessRequest.RefreshToken, refreshAccessRequest.AccessToken, DateTime.UtcNow);

            return(Json(tokens));
        }