public async Task <IActionResult> Login(UserModelForLogin userModelForLogin, string returnUrl = "/") { if (ModelState.IsValid) { var user = await userManager.FindByNameAsync(userModelForLogin.UserName); if (user != null) { var result = await signInManager .CheckPasswordSignInAsync(user, userModelForLogin.Password, true); if (result.Succeeded) { await signInManager.SignInAsync(user, userModelForLogin.RememberMe); return(LocalRedirect(returnUrl)); } if (result.IsLockedOut) { ModelState.AddModelError("", "Çok fazla şifre denemesi yaptınız. Lütfen 1 dakika bekleyiniz."); return(View(userModelForLogin)); } } ModelState.AddModelError("", "Kullanıcı adı veya Şifre bilgileri yanlış"); } return(View(userModelForLogin)); }
public async Task <IActionResult> Login([FromBody] UserModelForLogin userForLogin) { var user = await _authRepository.Login(userForLogin.UserName, userForLogin.Password); if (user == null) { return(Unauthorized()); } var tokenHandler = new JwtSecurityTokenHandler(); var key = Encoding.ASCII.GetBytes(_configuration.GetSection("AppSettings:Token").Value); var tokenDescriptor = new SecurityTokenDescriptor() { Subject = new ClaimsIdentity(new Claim[] { new Claim(ClaimTypes.NameIdentifier, user.Id.ToString()), new Claim(ClaimTypes.Name, user.UserName) }), Expires = DateTime.Now.AddMinutes(10), SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha512Signature) }; var token = tokenHandler.CreateToken(tokenDescriptor); var tokenString = tokenHandler.WriteToken(token); return(Ok(tokenString)); }