public override void OnActionExecuting(ActionExecutingContext filterContext) { var context = filterContext.HttpContext; if (context.Session["sessionid"] == null) { context.Session["sessionid"] = "empty"; } //LoginsController loginsCtlr = new LoginsController(); //string userId = HttpContext.Current.User.Identity.GetUserId(); if (LoginsController.IsYourLoginStillTrue(System.Web.HttpContext.Current.User.Identity.Name, context.Session["sessionid"].ToString())) { if (!LoginsController.IsUserLoggedOnElsewhere(System.Web.HttpContext.Current.User.Identity.Name, context.Session["sessionid"].ToString())) { base.OnActionExecuting(filterContext); } else { // if it is being used elsewhere, update all their Logins records to LoggedIn = false, except for your session ID LoginsController.LogEveryoneElseOut(System.Web.HttpContext.Current.User.Identity.Name, context.Session["sessionid"].ToString()); base.OnActionExecuting(filterContext); } } else { FormsAuthentication.SignOut(); filterContext.Result = new RedirectToRouteResult( new RouteValueDictionary { { "controller", "User" }, { "action", "Login" } }); } }
public LoginsTests() { _logins = new Mock <ILogins>(); _accessor = new Mock <IHttpContextAccessor>(); _controller = new LoginsController(_logins.Object, _accessor.Object); var session = Mock.Of <ISession>(); var httpContext = Mock.Of <HttpContext>(x => x.Session == session); _accessor.Setup(x => x.HttpContext).Returns(httpContext); }
private void RegennerateNewToken(ClaimsPrincipal principal, AuthorizationFilterContext context) { ClaimsIdentity identity = null; identity = (ClaimsIdentity)principal.Identity; Claim usernameClaim = identity.FindFirst(ClaimTypes.Name); var username = usernameClaim.Value; LoginsController ctrl = new LoginsController(); context.HttpContext.Response.Headers.Add("UpdatedToken", ctrl.createToken(username)); }
public async Task Login_WithCorrectPass() { KiperContext Context = GetContext(); _LoginsController = new LoginsController(Context); await ForceAddInContext(Context); string user = "******"; string pass = GetEncryptLoginPass("Teste@Kiper"); var result = _LoginsController.GetLogin(user, pass) as OkResult; Assert.Equal(200, result.StatusCode); }
public async Task Login_WithWrongPass() { KiperContext Context = GetContext(); _LoginsController = new LoginsController(Context); await ForceAddInContext(Context); string user = "******"; string pass = GetEncryptLoginPass("Teste"); var result = _LoginsController.GetLogin(user, pass) as NotFoundObjectResult; Assert.Equal(404, result.StatusCode); Assert.Equal("Usuário e/ou Senha incorretos. Tente novamente.".ToUpper(), result.Value.ToString().ToUpper()); }
public int Login(string uname, string pword) { int lType = 0; LoginsController lc = new LoginsController(); var logins = lc.SendList(); string test = ""; foreach (var l in logins) { test = l.Username; if (l.Username == uname && l.Password == pword) { lType = l.Type; break; } else { l.Type = 0; } } return(lType); }