private async Task <User> AuthenticateAsync(CredentialsFormModel login) { User user = await _userManager.FindByNameAsync(login.UserName); if (user != null) { // check the credentials if (await _userManager.CheckPasswordAsync(user, login.Password)) { return(user); } } return(null); }
public async Task <IActionResult> Authenticate([FromBody] CredentialsFormModel login) { IActionResult response = BadRequest("login failed"); var user = await AuthenticateAsync(login); var roles = await _userManager.GetRolesAsync(user); if (user != null) { var tokenString = _jwtFactory.GenerateEncodedToken(user, roles); response = Ok(new { token = tokenString }); } return(response); }