private void ValidateCredentials(CredentialProxy credentials) { if (credentials == null) { ThrowHttp.BadRequest(ErrorMessage.CREDENTIALS_REQUIRED); } if (string.IsNullOrWhiteSpace(credentials.Email)) { ThrowHttp.BadRequest(CommonErrorMessage.EMAIL_REQUIRED); } if (string.IsNullOrWhiteSpace(credentials.Password)) { ThrowHttp.BadRequest(CommonErrorMessage.PASSWORD_REQUIRED); } }
public async Task <AccessTokenResponse> LogInAsync(CredentialProxy credentials) { ValidateCredentials(credentials); var user = await _userModel.GetByEmailAsync(credentials.Email); if (user == null || !HasPasswordMatch(user.PasswordHash, credentials.Password)) { ThrowHttp.Unauthorized(ErrorMessage.CREDENTIAL_MISMATCH); } var claim = new Claim(ClaimTypes.Email, user.Email); var token = _accessTokenManager.CreateAccessToken(new[] { claim }); return(new AccessTokenResponse(token)); }
public async Task <AccessTokenResponse> LogInAsync(CredentialProxy credentials) { return(await _accountModel.LogInAsync(credentials)); }