public async Task <AuthorizationResponseModel> LogInAsync(AuthorizationRequestModel logInRequestModel) { var response = new AuthorizationResponseModel { IsSuccessful = false }; UserData userData = await applicationUserRepository.FindByEmailAsync(logInRequestModel.Email.Normalize()); if (userData == null) { response.Message = "Account with this email doesn`t exists"; } else if (!await applicationUserRepository.CheckPasswordAsync( logInRequestModel.Email, logInRequestModel.Password)) { response.Message = "Wrong Password"; } else { string token = javascriptWebTokenFactory.Create(userData.Id); var sessionDto = new SessionData { UserId = userData.Id, Token = token }; await sessionRepository.CreateAsync(sessionDto); response.Token = token; response.IsSuccessful = true; } return(response); }
public async Task <AuthorizationResponseModel> RefreshAsync(RefreshRequest authorization) { try { RefreshRequest res = authorization; var result = await _apiBaseUrl .AppendPathSegment("api/auth/authorize") .PostJsonAsync(authorization) .ReceiveJson <AuthorizationResponseModel>(); // .GetJsonAsync<string>(); return(result); } catch (FlurlHttpException fex) { AuthorizationResponseModel res = new AuthorizationResponseModel(); Debug.WriteLine(fex); res.AccessToken = string.Empty; return(res); } }
public async Task <IActionResult> AuthorizeAsync([FromBody] AuthorizationModel authorizationModel) { var user = await _dbContext.Users .Include(i => i.UserRoles) .ThenInclude(i => i.Role) .FirstOrDefaultAsync(i => i.UserName == authorizationModel.UserName && i.Password == authorizationModel.Password); if (user == null) { _logger.LogError($"User [{authorizationModel.UserName}] was not found in the DB. UserName or Password is not correct"); return(BadRequest($"Wrong credentials for user [{authorizationModel.UserName}]")); } var token = JwtUtil.NewJwtToken(authorizationModel.UserName, _authOptions.JwtSecret, _authOptions.JwtExpirationSeconds); var response = new AuthorizationResponseModel { Token = token, FirstName = user.FirstName, LastName = user.LastName, UserName = user.UserName, IsAdmin = user.UserRoles.Any(i => i.Role?.Name == "Admin") }; return(Ok(response)); }
public IActionResult Authorize(AuthorizationModel authorizationModel) { try { var response = new AuthorizationResponseModel(); var user = GetUsers().FirstOrDefault(u => u.Login == authorizationModel.Login); if (user == null) { return(Ok(response)); } response.IsKnownUser = true; if (user.Password != authorizationModel.Password) { return(Ok(response)); } response.IsAuthorized = true; response.Role = user.Role; return(Ok(response)); } catch (Exception exception) { return(BadRequest(exception)); } }
public IActionResult CompletePaymentHandler(AuthorizationResponseModel model) { // Hard coded orderId, should be taken from response // TODO: take parameters from payment response int orderId = 14563; string gateway_reference = "31293"; string gateway_message = "Success"; var order = _orderService.GetOrderById(orderId); if (order != null) { //order note order.OrderNotes.Add(new OrderNote { Note = "PayBright payment process: " + gateway_message, DisplayToCustomer = false, CreatedOnUtc = DateTime.UtcNow }); _orderService.UpdateOrder(order); } //valid if (_orderProcessingService.CanMarkOrderAsPaid(order)) { order.AuthorizationTransactionId = gateway_reference; _orderService.UpdateOrder(order); _orderProcessingService.MarkOrderAsPaid(order); } // redirect to checkout complete page return(RedirectToRoute("CheckoutCompleted", new { orderId = orderId })); }