Exemplo n.º 1
0
        /// <summary>
        /// 得到web.config里配置项的数据库连接字符串。
        /// </summary>
        /// <param name="configName"></param>
        /// <returns></returns>
        public static string GetConnectionString(string configName)
        {
            string connectionString = ConfigurationManager.AppSettings[configName];
            string ConStringEncrypt = ConfigurationManager.AppSettings["ConStringEncrypt"];

            if (ConStringEncrypt == "true")
            {
                connectionString = MyDES.Decrypt(connectionString);
            }
            return(connectionString);
        }
Exemplo n.º 2
0
        public IActionResult Login()
        {
            string strUserName = Request.Form["username"];
            string strPassWord = Request.Form["password"];

            if (strUserName.Length % 8 != 0)
            {
                tip.Message = "请输入用户名不合法!";
                return(Json(tip));
            }
            if (strPassWord.Length % 8 != 0)
            {
                tip.Message = "请输入密码不合法!";
                return(Json(tip));
            }
            //判断并解密
            string key = SessionHelper.GetSession("des_key").ToString();

            if (string.IsNullOrEmpty(key))
            {
                tip.Message = "页面访问超时,请刷新页面重新登录!";
                tip.Other   = "reload";
                return(Json(tip));
            }
            //解密
            string username = "";
            string password = "";

            try
            {
                username = MyDES.uncMe(strUserName, key);
                password = MyDES.uncMe(strPassWord, key);
            }
            catch (Exception exp)
            {
                NewLife.Log.XTrace.WriteException(exp);
                tip.Message = "页面访问超时,请刷新页面重新登录!";
                tip.Other   = "reload";
                return(Json(tip));
            }

            //验证用户
            if (string.IsNullOrEmpty(username))
            {
                tip.Message = "请输入用户名!";
                return(Json(tip));
            }
            if (string.IsNullOrEmpty(password) || Utils.GetStringLength(password) < 5)
            {
                tip.Message = "登录密码不能为空或者长度小于5!";
                return(Json(tip));
            }
            //如果15分钟内有10次失败登录,则提示错误
            string     ip = Utils.GetIP();
            Expression ex = AdminLog._.IsLoginOK == 0 & AdminLog._.LoginIP == ip & AdminLog._.LoginTime >= DateTime.Now.AddMinutes(-15);

            if (AdminLog.FindCount(ex, null, null, 0, 0) >= 10)
            {
                tip.Message = "错误登录次数限制!";
                return(Json(tip));
            }
            //执行登录操作
            if (Admin.AdminLogin(username, password))
            {
                tip.Status    = JsonTip.SUCCESS;
                tip.Message   = "登录成功";
                tip.ReturnUrl = "/AdminCP";
                return(Json(tip));
            }
            else
            {
                tip.Message = "用户名或者密码错误!请重新登录!";
                return(Json(tip));
            }
        }