public async Task <IActionResult> Login([FromBody] AuthLoginModel auth) { var res = await this._AuthMan.Login(auth); if (res.Status == false) { return(BadRequest(res)); } return(Ok(res)); }
public async Task <DataResponse <AuthModel> > Login(AuthLoginModel auth) { var res = new DataResponse <AuthModel>(); res.Data = new AuthModel(); res.SetSuccessStatsus(); var user = await this._DbMan.Users .Where(Q => Q.UserName == auth.UserName) .FirstOrDefaultAsync(); if (user == null) { res.SetFailedtatsus(); res.SetMessage(AuthMessage.AuthError, (int)MessageTypeEnum.Error); res.Data = null; return(res); } var IsPasswordValid = BCrypt.Net.BCrypt.EnhancedVerify(auth.UserPassword, user.UserPassword, BCrypt.Net.HashType.SHA256); if (IsPasswordValid == false) { res.SetFailedtatsus(); res.SetMessage(AuthMessage.AuthError, (int)MessageTypeEnum.Error); res.Data = null; return(res); } try { res.Data.Token = GenerateJwtToken(user); res.Data.UserId = user.UserId; res.Data.UserRole = user.UserRole; } catch (Exception ex) { var msg = ex.Message; //TODO: Insert Log res.SetFailedtatsus(); res.SetMessage(CommonMessage.CommonErrorMessage, (int)MessageTypeEnum.Exception); } res.SetMessage(AuthMessage.AuthSuccess, (int)MessageTypeEnum.Success); return(res); }
public JsonResult Post([FromBody] AuthLoginModel data) { if (ModelState.IsValid) { bool status; User user; string access_token = AppRepo.IsValidLogin(data, out user, out status); if (status) { CookieOptions options = new CookieOptions() { Expires = DateTime.Now.AddYears(1) }; Response.Cookies.Append("access_token", access_token, options); return(Json(new { UserId = user.UserId, Role = user.Role })); } } Response.StatusCode = 401; return(Json(new { error = "Unauthorized Error" })); }
public string IsValidLogin(AuthLoginModel model, out User outUser, out bool status) { var user = (from u in Context.Users where u.Email == model.Email select u).First(); outUser = user; if (CheckPassowrd(model.Password, user)) { status = true; return(EncodeToken(new Dictionary <string, object> { { "userId", user.UserId }, { "username", user.Username }, { "role", user.Role } })); } status = false; return(""); }
public async Task <AuthResponseDto> Login([FromBody] AuthLoginModel loginModel, CancellationToken cancellationToken = default) { return(await authService.Authenticate(loginModel.Username, loginModel.Password, cancellationToken).ConfigureAwait(false)); }