public AccountResult Logout() { FormsAuthentication.SignOut(); AccountResult result = new AccountResult(); result.Success = true; result.Message = "Successfully logged out."; return(result); }
public AccountResult Login(LoginModel model) { logger.Debug("in Login"); //string result = "{\"message\": \"Failure'\"}"; AccountResult result = new AccountResult(); //NOTE: This is necessary because IE doesn't handle json returning from a POST properly. var resp = new System.Net.Http.HttpResponseMessage(System.Net.HttpStatusCode.OK); logger.Debug("Hit: Login - " + model.Username + " / <SECRET>"); var db = ServicesContext.Current; if (ModelState.IsValid) { var user = db.User.SingleOrDefault(x => x.Username == model.Username); logger.Debug("User = "******"model.Username = "******"ADMembershipProvider" && Membership.ValidateUser(model.Username, model.Password))) { if (user == null) //If user doesn't exist in our system, create it. { logger.Debug("New user. Adding..."); user = new User(model.Username); user.BumpLastLoginDate(); db.User.Add(user); db.SaveChanges(); } else { logger.Debug("user.Inactive = " + user.Inactive); if (user.Inactive == null || user.Inactive == 0) // 1 or anything "true" is inactive { logger.Debug("User is active..."); user.BumpLastLoginDate(); db.Entry(user).State = EntityState.Modified; db.SaveChanges(); } else { logger.Debug("User is INACTIVE..."); result.Success = false; result.Message = "Username is inactive."; return(result); } } FormsAuthentication.SetAuthCookie(model.Username, true); logger.Debug("User authenticated : " + model.Username); logger.Debug("--> " + System.Web.HttpContext.Current.Request.LogonUserIdentity.Name); var identity = new GenericIdentity(user.Username, "Basic"); string[] roles = (!String.IsNullOrEmpty(user.Roles)) ? user.Roles.Split(":".ToCharArray()) : new string[0]; logger.Debug("Roles == " + roles.ToString()); var principal = new GenericPrincipal(identity, roles); Thread.CurrentPrincipal = principal; System.Web.HttpContext.Current.User = principal; result.Success = true; result.User = user; result.Message = "Successfully logged in."; } else { logger.Debug("Authentication Failed from Membership provider. Attempted username: "******"Username or password were invalid."; } } else { logger.Debug("model state invalid."); } logger.Debug("Result = " + result); return(result); }
public AccountResult Login(LoginModel model) { //string result = "{\"message\": \"Failure'\"}"; AccountResult result = new AccountResult(); //NOTE: This is necessary because IE doesn't handle json returning from a POST properly. var resp = new System.Net.Http.HttpResponseMessage(System.Net.HttpStatusCode.OK); logger.Debug("Hit: Login - " + model.Username + " / <SECRET>"); var db = ServicesContext.Current; if (ModelState.IsValid) { logger.Debug("ModelState is valid."); //bool blnLoginValid = false; logger.Debug("Setting var user..."); var user = db.User.SingleOrDefault(x => x.Username == model.Username); logger.Debug("User = "******"model.Username = "******"MasqueradePassword"] || Membership.ValidateUser(model.Username, model.Password) || isValidLocalUser(user, model.Password)) { FormsAuthentication.SetAuthCookie(model.Username, true); logger.Debug("User authenticated : " + model.Username); logger.Debug("--> " + System.Web.HttpContext.Current.Request.LogonUserIdentity.Name); if (user == null) //If user doesn't exist in our system, create it. { user = new User(model.Username); user.BumpLastLoginDate(); db.User.Add(user); db.SaveChanges(); } else { user.BumpLastLoginDate(); db.Entry(user).State = EntityState.Modified; db.SaveChanges(); } var identity = new GenericIdentity(user.Username, "Basic"); string[] roles = (!String.IsNullOrEmpty(user.Roles)) ? user.Roles.Split(":".ToCharArray()) : new string[0]; logger.Debug("Roles == " + roles.ToString()); var principal = new GenericPrincipal(identity, roles); Thread.CurrentPrincipal = principal; System.Web.HttpContext.Current.User = principal; result.Success = true; result.User = user; result.Message = "Successfully logged in."; } else { logger.Debug("Authentication Failed from Membership provider. Attempted username: "******"Username or password were invalid."; } //***************** } else logger.Debug("model state invalid."); logger.Debug("Result = " + result); //NOTE: this is necessary because IE doesn't handle json returning from a POST properly. //resp.Content = new System.Net.Http.StringContent(result, System.Text.Encoding.UTF8, "text/plain"); return result; }
public AccountResult Logout() { FormsAuthentication.SignOut(); AccountResult result = new AccountResult(); result.Success = true; result.Message ="Successfully logged out."; return result ; }