示例#1
0
    protected void Del_Btn(object obj, EventArgs e)
    {
        LinkButton        linkButton        = obj as LinkButton;
        RepeaterItem      repeaterItem      = linkButton.Parent as RepeaterItem;
        HtmlInputCheckBox htmlInputCheckBox = repeaterItem.FindControl("chk") as HtmlInputCheckBox;
        int id = Convert.ToInt32(htmlInputCheckBox.Value);

        Sys_UserLogin.Init().Delete(id);
        this.Show();
    }
示例#2
0
 protected void Del_All(object sender, EventArgs e)
 {
     foreach (RepeaterItem repeaterItem in this.rpt.Items)
     {
         HtmlInputCheckBox htmlInputCheckBox = repeaterItem.FindControl("chk") as HtmlInputCheckBox;
         if (htmlInputCheckBox.Checked)
         {
             int id = Convert.ToInt32(htmlInputCheckBox.Value);
             Sys_UserLogin.Init().Delete(id);
         }
     }
     this.Show();
 }
示例#3
0
        /// <summary>
        /// 用户登陆验证
        /// </summary>
        /// <param name="account"></param>
        /// <param name="password"></param>
        /// <param name="platform">0:web,1:app</param>
        /// <returns></returns>
        public (bool Status, string Message, Entities.Sys_User User, Entities.Sys_UserJwt Jwt) ValidateUser(string account, string password, int platform = 0)
        {
            var user = _dbContext.Sys_User.Where(o => o.Account == account && !o.IsDeleted).FirstOrDefault();

            if (user == null)
            {
                return(false, "账号或密码错误", null, null);
            }

            var r_item = _dbContext.Sys_UserR.FirstOrDefault(o => o.UserId == user.Id && o.Platform == platform);

            if (r_item == null)
            {
                return(false, "非法操作,因子不存在,请重试", null, null);
            }

            var pwd = EncryptorHelper.GetMD5((user.Password ?? "") + r_item.R);
            var log = new Sys_UserLogin()
            {
                Id        = CombGuid.NewGuid(),
                UserId    = user.Id,
                IpAddress = _webHelper.GetIPAddress(),
                LoginTime = DateTime.Now,
                Status    = false
            };

            Entities.Sys_UserJwt jwt = null;
            string msg = "账号或密码错误";

            if (password.Equals(pwd, StringComparison.InvariantCultureIgnoreCase))
            {
                log.Status         = true;
                msg                = "登陆成功";
                user.LastIpAddress = log.IpAddress;
                _dbContext.Sys_UserR.Remove(r_item);
                jwt = new Sys_UserJwt()
                {
                    Jti          = EncryptorHelper.GetMD5(Guid.NewGuid().ToString()),
                    Expiration   = DateTime.Now.AddDays(30),
                    RefreshToken = EncryptorHelper.GetMD5(Guid.NewGuid().ToString()),
                    Platform     = platform,
                    UserId       = user.Id
                };
                _dbContext.Sys_UserJwt.Add(jwt);
            }
            _dbContext.Sys_UserLogin.Add(log);
            _dbContext.SaveChanges();
            return(log.Status, msg, user, jwt);
        }
示例#4
0
        /// <summary>
        /// 登陆尝试
        /// </summary>
        /// <param name="loginResult"></param>
        /// <param name="tenancyName"></param>
        /// <param name="userNameOrEmailAddress"></param>
        /// <returns></returns>
        protected virtual async Task SaveLoginAttempt(AjaxResult loginResult, string account)
        {
            var user         = loginResult.Data as Sys_Account;
            var loginAttempt = new Sys_UserLogin
            {
                UserId  = user == null ? 0 : user.Id,
                Account = account,

                Result = loginResult.PromptMsg,

                ClientInfo = _clientProvider.ClientInfo,
                ClientIp   = _clientProvider.ClientIpAddress,
                ClientName = _clientProvider.ClientName,
            };

            await _loginAttemptsRepository.InsertAsync(loginAttempt);
        }
示例#5
0
    private string CheckPass(string u, string p)
    {
        Hashtable hashtable = (Hashtable)HttpContext.Current.Application["stand_config"];
        double    value     = Convert.ToDouble(hashtable["user_cookie_delay"]);
        IList     list      = new List <Sys_UserInfo>();
        string    cmdText   = "select * from sys_user where UserName=@U and PassWord=@P";

        using (DataSet dataSet = MsSqlOperate.ExecuteDataset(CommandType.Text, cmdText, new List <SqlParameter>
        {
            new SqlParameter("@U", u ?? ""),
            new SqlParameter("@P", Encrypt.MD5_32(p.Trim().ToLower()) ?? "")
        }.ToArray()))
        {
            if (dataSet.Tables[0].Rows.Count > 0)
            {
                list = (IList)Utils.GetList <Sys_UserInfo>(dataSet);
            }
        }
        string result;

        if (list.Count == 0)
        {
            result = "n";
        }
        else
        {
            Sys_UserInfo sys_UserInfo = list[0] as Sys_UserInfo;
            sys_UserInfo.IsOnline         = 1;
            sys_UserInfo.CurrentLoginTime = DateTime.Now.ToString("yyMddhhmmssfff");
            string moduleList = this.GetModuleList(sys_UserInfo.DepID, sys_UserInfo.RoleID);
            string text       = string.Concat(new object[]
            {
                sys_UserInfo.id,
                "|",
                sys_UserInfo.UserName,
                "|",
                sys_UserInfo.RealName,
                "|",
                sys_UserInfo.DepID,
                "|",
                sys_UserInfo.DepName,
                "|",
                moduleList,
                "|",
                sys_UserInfo.CurrentLoginTime,
                "|",
                base.Request.Form["px"]
            });

            //string value2 = Encrypt.RC4_Encode(text, "lazy1111");

            string value2 = Encrypt.EncryptString(text, "lazy1111");

            HttpContext.Current.Session["UserCookies"] = text;
            HttpContext.Current.Session.Timeout        = Convert.ToInt32(value) * 10;
            HttpCookie httpCookie = new HttpCookie("UserCookies");
            if (!string.IsNullOrEmpty(base.Request.Form["chkRemember"]))
            {
                httpCookie.Expires = DateTime.Now.AddHours(value);
            }
            httpCookie["key"] = value2;
            base.Response.Cookies.Add(httpCookie);
            sys_UserInfo.LastLoginTime = DateTime.Now;
            sys_UserInfo.LastLoginIp   = RequestUtils.GetIP();
            sys_UserInfo.LoginQuantity++;
            Sys_User.Init().Update(sys_UserInfo);
            IList <Sys_UserInfo> list2 = base.Application["user_online"] as IList <Sys_UserInfo>;
            bool flag = false;
            foreach (object current in list2)
            {
                Sys_UserInfo sys_UserInfo2 = current as Sys_UserInfo;
                if (sys_UserInfo2.id == sys_UserInfo.id)
                {
                    flag = true;
                    sys_UserInfo2.IsOnline         = 1;
                    sys_UserInfo2.CurrentLoginTime = sys_UserInfo.CurrentLoginTime;
                    sys_UserInfo2.LastLoginTime    = sys_UserInfo.LastLoginTime;
                }
            }
            if (!flag)
            {
                list2.Add(sys_UserInfo);
            }
            Sys_UserLoginInfo sys_UserLoginInfo = new Sys_UserLoginInfo();
            sys_UserLoginInfo.UserName  = sys_UserInfo.UserName;
            sys_UserLoginInfo.UserInfo  = sys_UserInfo.RealName + "(" + sys_UserInfo.DepName + ")";
            sys_UserLoginInfo.LoginIP   = RequestUtils.GetIP();
            sys_UserLoginInfo.LoginTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
            Sys_UserLogin.Init().Add(sys_UserLoginInfo);
            result = sys_UserInfo.Status + "," + sys_UserInfo.IsLock;
        }
        return(result);
    }
示例#6
0
    private string CheckPass1(string u, string p)
    {
        Hashtable hashtable = (Hashtable)HttpContext.Current.Application["stand_config"];
        double    value     = Convert.ToDouble(hashtable["user_cookie_delay"]);
        IList     all       = Sys_User.Init().GetAll(string.Concat(new string[]
        {
            " UserName='******' and PassWord='******' "
        }), null);
        string result;

        if (all.Count == 0)
        {
            result = "n";
        }
        else
        {
            Sys_UserInfo sys_UserInfo = all[0] as Sys_UserInfo;
            this.dxbbs_ui                 = sys_UserInfo;
            sys_UserInfo.IsOnline         = 1;
            sys_UserInfo.CurrentLoginTime = DateTime.Now.ToString("yyMddhhmmssfff");
            string     moduleList    = this.GetModuleList(sys_UserInfo.DepID, sys_UserInfo.RoleID);
            HttpCookie httpCookie    = new HttpCookie("UserCookies");
            string     encryptString = string.Concat(new object[]
            {
                sys_UserInfo.id,
                "|",
                sys_UserInfo.UserName,
                "|",
                sys_UserInfo.RealName,
                "|",
                sys_UserInfo.DepID,
                "|",
                sys_UserInfo.DepName,
                "|",
                moduleList,
                "|",
                sys_UserInfo.CurrentLoginTime,
                "|",
                base.Request.Form["px"]
            });
            httpCookie.Expires = DateTime.Now.AddHours(value);
            string asasasas = Config.GetBeckHam();
            httpCookie["key"] = Encrypt.RC4_Encode(encryptString, Config.GetBeckHam());
            string asdasdsa = Encrypt.RC4_Encode(encryptString, Config.GetBeckHam());
            base.Response.Cookies.Add(httpCookie);
            sys_UserInfo.LastLoginTime = DateTime.Now;
            sys_UserInfo.LastLoginIp   = RequestUtils.GetIP();
            sys_UserInfo.LoginQuantity++;
            Sys_User.Init().Update(sys_UserInfo);

            IList <Sys_UserInfo> list2 = base.Application["user_online"] as IList <Sys_UserInfo>;
            bool flag = false;
            foreach (object current in list2)
            {
                Sys_UserInfo sys_UserInfo2 = current as Sys_UserInfo;
                if (sys_UserInfo2.id == sys_UserInfo.id)
                {
                    flag = true;
                    sys_UserInfo2.IsOnline         = 1;
                    sys_UserInfo2.CurrentLoginTime = sys_UserInfo.CurrentLoginTime;
                    sys_UserInfo2.LastLoginTime    = sys_UserInfo.LastLoginTime;
                }
            }
            if (!flag)
            {
                list2.Add(sys_UserInfo);
            }



            //Hashtable hashtable2 = base.Application["user_online"] as Hashtable;
            //bool flag = false;
            //foreach (DictionaryEntry dictionaryEntry in hashtable2)
            //{
            //    if (dictionaryEntry.Key.ToString() == sys_UserInfo.id.ToString())
            //    {
            //        flag = true;
            //    }
            //}
            //if (flag)
            //{
            //    hashtable2[sys_UserInfo.id.ToString()] = sys_UserInfo;
            //}
            //else
            //{
            //    hashtable2.Add(sys_UserInfo.id.ToString(), sys_UserInfo);
            //}
            Sys_UserLoginInfo sys_UserLoginInfo = new Sys_UserLoginInfo();
            sys_UserLoginInfo.UserName  = sys_UserInfo.UserName;
            sys_UserLoginInfo.UserInfo  = sys_UserInfo.RealName + "(" + sys_UserInfo.DepName + ")";
            sys_UserLoginInfo.LoginIP   = RequestUtils.GetIP();
            sys_UserLoginInfo.LoginTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
            Sys_UserLogin.Init().Add(sys_UserLoginInfo);
            result = sys_UserInfo.Status + "," + sys_UserInfo.IsLock;
        }
        return(result);
    }