public async Task <IActionResult> Login(LoginRequest request) { if (!ModelState.IsValid) { return(View(ModelState)); } var domainRequest = mapper.Map <Domains.LoginRequest>(request); var token = await userHandler.Authenticate(domainRequest); var claimsPrincipal = userHandler.ValidateToken(token); var authProperties = new AuthenticationProperties { ExpiresUtc = DateTimeOffset.UtcNow.AddMinutes(10), IsPersistent = false }; //HttpContext.Session.SetString("Token", token); await HttpContext.SignInAsync( CookieAuthenticationDefaults.AuthenticationScheme, claimsPrincipal, authProperties); return(RedirectToAction("Index", "Home")); }
public async Task <IActionResult> Login(LoginRequest request) { if (!ModelState.IsValid) { return(View()); } var authenticateResponse = await userHandler.Authenticate(request); if (!authenticateResponse.IsSucceed) { ModelState.AddModelError(nameof(request.Passcode), authenticateResponse.ErrorMessage); return(View()); } var claimsPrincipal = userHandler.ValidateToken(authenticateResponse.Tokens); var authProperties = new AuthenticationProperties { ExpiresUtc = DateTimeOffset.UtcNow.AddMinutes(10), IsPersistent = false }; HttpContext.Session.SetServiceType(request.Service); await HttpContext.SignInAsync( CookieAuthenticationDefaults.AuthenticationScheme, claimsPrincipal, authProperties); return(RedirectToAction("Index", "Rating", new { ServiceType = request.Service })); }