public async Task <AuthenticatedUserVM> GenerateApiToken(string username, string userpass) { UserVM user = await this._userApplication.GetUser(username, userpass); var jwtSecurityTokenHandler = new JwtSecurityTokenHandler(); SecurityTokenDescriptor securityTokenDescriptor = GenerateSecurityTokenDescriptor(user); AuthenticatedUserVM authenticatedUser = new AuthenticatedUserVM { Token = GenerateToken(jwtSecurityTokenHandler, securityTokenDescriptor), User = user }; return(authenticatedUser); }
public async Task <ActionResult <AuthenticatedUserVM> > Authenticate(AuthenticateUserVM user) { try { AuthenticatedUserVM authenticatedUser = await this._tokenService.GenerateApiToken(user.UserName, user.UserPassword); LogTraceVM logTrace = new LogTraceVM(string.Empty, "AuthenticateController", "Authenticate"); logTrace.Parameters.Add(user); return(Ok(authenticatedUser)); } catch (Exception error) { LogErrorVM logError = new LogErrorVM(error.Message, error.StackTrace, "AuthenticateController", "Authenticate"); logError.Parameters.Add(user); this._logger.LogError(error, logError.ToString()); return(BadRequest(error.Message)); } }