public async Task <IActionResult> Authenticate([FromBody] AuthenticationVm model) { var response = await _userService.Authentication(model, ipAddress()); setTokenCookie(response.RefreshToken); return(Ok(response)); }
public AuthenticationWindow(JirnalCore jirnalCore) { jirnalCore_ = jirnalCore; authVm_ = new AuthenticationVm(jirnalCore); DataContext = authVm_; InitializeComponent(); Loaded += OnLoaded_; Browser.DocumentCompleted += OnDocumentLoaded_; }
public async Task <AuthenticateResponseVm> Authentication(AuthenticationVm model, string IpAddress) { var user = await _userManager.FindByNameAsync(model.Email); if (user == null) { throw new MyException(ApiResponseDescription.INCORECT_EMAIL); } if (await _userManager.CheckPasswordAsync(user, model.Password)) { var result = await _signInManager.PasswordSignInAsync(model.Email, model.Password, model.isPersistent, lockoutOnFailure : false); if (result == SignInResult.NotAllowed) { throw new MyUnauthorizedException(ApiResponseDescription.EMAIL_ADDRESS_IS_NOT_CONFIRMED); } var jwtToken = generateJwtToken(user); var refreshToken = generateRefreshToken(IpAddress); user.RefreshTokens.Add(refreshToken); _unitOfWork.userRepository.Update(user); await _unitOfWork.CompleteAsync(); return(new AuthenticateResponseVm { JwtToken = jwtToken, RefreshToken = refreshToken.Token, Id = user.Id, FirstName = user.FirstName, LastName = user.LastName, Email = user.Email, Alias = user.Alias }); } else { throw new MyException(ApiResponseDescription.INCORECT_PAASWORD); } }