public async Task <ModelResponseMessageLogin> LogInAsync(ModelUserLogin model) { ModelResponseMessageLogin resp = new ModelResponseMessageLogin(); if (string.IsNullOrWhiteSpace(model.userid)) { resp.Message = "UserId is require."; } if (string.IsNullOrWhiteSpace(model.passw)) { resp.Message = "Password is require."; } EntityLogSystem entity_model = new EntityLogSystem(); entity_model.userid = model.userid; entity_model.passw = System.Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(model.passw)); entity_model.log_event = "Login to system."; entity_model.log_date = DateTime.Now; resp = await _ISystemRepository.LogIn(entity_model); if (!string.IsNullOrEmpty(resp.Data.RegisterId)) { Guid guid = Guid.NewGuid(); resp.Data.Guid = guid.ToString(); resp.Data.Token = String.Empty; resp.Data.RegisterId = System.Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(resp.Data.RegisterId)); } return(resp); }
public async Task <IActionResult> LogOut([FromBody] ModelUserLogin model) { var requestUri = $"{_WebApiModel.BaseURL}/{"PrivateSystem"}/{"LogOut"}"; string authHeader = HttpContext.Request?.Headers["Authorization"]; if (authHeader != null && authHeader.StartsWith("Bearer")) { BearerToken = authHeader.Substring("Bearer ".Length).Trim(); } var response = await HttpRequestFactory.Post(requestUri, BearerToken, model); switch (response.StatusCode) { case HttpStatusCode.Unauthorized: return(Unauthorized(response.ContentAsString())); case HttpStatusCode.BadRequest: return(BadRequest(response.ContentAsString())); case HttpStatusCode.OK: return(Ok(response.ContentAsString())); default: return(StatusCode(500)); } }
public async Task <IActionResult> LogOut(ModelUserLogin model) { ModelResponseMessageLogin e = await _ISystemService.LogOutAsync(model); if (e != null && e.Status) { return(Ok(e)); } return(BadRequest()); }
public async Task <IActionResult> Login(ModelUserLogin login) { login.Validate(ModelState); if (!ModelState.IsValid) { return(View()); } // ------------ User Validation ----------------- IUser user = _database.Search <User>(x => x.Username == login.User).FirstOrDefault(); if (user == null) { ModelState.AddModelError("User", "Username is invalid"); return(View()); } if (!_security.Validate(user.Hash, login.Pass, user.Salt)) { ModelState.AddModelError("Pass", "Password is invalid"); return(View()); } // ------------ End Validation ----------------- string claimIssuer = this.GetType().Namespace; List <Claim> claims = new List <Claim>(); claims.Add(new Claim(ClaimTypes.Name, user.Username, ClaimValueTypes.String, claimIssuer)); claims.Add(new Claim(ClaimTypes.NameIdentifier, user.Id.ToString(), ClaimValueTypes.Integer, claimIssuer)); foreach (string role in user.Roles) { claims.Add(new Claim(ClaimTypes.Role, role, ClaimValueTypes.String, claimIssuer)); } var userIdentity = new ClaimsIdentity("CookieAuth"); userIdentity.AddClaims(claims); var userPrincipal = new ClaimsPrincipal(userIdentity); var authProperties = new AuthenticationProperties(); authProperties.AllowRefresh = false; authProperties.ExpiresUtc = DateTime.UtcNow.AddHours(8); authProperties.IsPersistent = true; await HttpContext.Authentication.SignInAsync( "CookieAuth", userPrincipal, authProperties ); return(RedirectToAction("Index", "Home")); }
public void DeleteUserLogin(ModelUserLogin model) { using (var transaction = _ctx.Database.BeginTransaction()) { try { var entity = _ctx.UserLogins.FirstOrDefault(x => x.LoginID == model.LoginID); entity.UserLoginActive = false; _ctx.Update(entity); _ctx.SaveChanges(); transaction.Commit(); } catch (Exception e) { transaction.Rollback(); throw new ArgumentException(e.Message); } } }
public void CreateUserLogin(ModelUserLogin model) { using (var transaction = _ctx.Database.BeginTransaction()) { try { model.UserLoginActive = true; var entity = model.ToEntity(); _ctx.Insert(entity); _ctx.SaveChanges(); transaction.Commit(); } catch (Exception e) { transaction.Rollback(); throw new ArgumentException(e.Message); } } }
public async Task <ModelResponseMessageLogin> LogOutAsync(ModelUserLogin model) { ModelResponseMessageLogin resp = new ModelResponseMessageLogin(); if (string.IsNullOrWhiteSpace(model.userid)) { resp.Message = "UserId is require."; } if (string.IsNullOrWhiteSpace(model.passw)) { resp.Message = "Password is require."; } EntityLogSystem entity_model = new EntityLogSystem(); entity_model.register_id = Encoding.UTF8.GetString(Convert.FromBase64String(model.registerid)); entity_model.userid = model.userid; entity_model.log_event = "Logout to system."; entity_model.log_date = DateTime.Now; resp = await _ISystemRepository.LogIn(entity_model); return(resp); }
public IQueryable <ModelUserLogin> GetUserLoginsByUsername(string username) { var model = new ModelUserLogin(); return(model.Get(_ctx).Where(x => x.Username == username)); }
public ModelUserLogin GetUserLogin(int loginid) { var model = new ModelUserLogin(); return(model.Get(_ctx).FirstOrDefault(x => x.LoginID == loginid)); }
public IQueryable <ModelUserLogin> ReadUserLogins() { var model = new ModelUserLogin(); return(model.Get(_ctx)); }