public async Task <ObjectResult> Login(LoginModel loginModel) { var user = await _userManager.FindByNameAsync(loginModel.Username); if (user == null || !await _userManager.CheckPasswordAsync(user, loginModel.Password)) { return(new UnauthorizedObjectResult(new LoginResponse { Username = loginModel.Username })); } var userRoles = await _userManager.GetRolesAsync(user); var token = _appSecurity.GetToken(user.Id, DateTime.Now, userRoles); return(new OkObjectResult(new LoginResponse { Username = loginModel.Username, Token = token })); }