예제 #1
0
    protected void btLogin_Click(object sender, EventArgs e)
    {
        if (Session[loginFailCountName] != null && (int)Session[loginFailCountName] > 3)
        {
            Session[loginFailCountName + "Time"] = DateTime.Now.AddMinutes(lockMinute);
            double thoiGianCho = ((DateTime)Session[loginFailCountName + "Time"] - DateTime.Now).TotalMinutes;
            ltrLoginResult.Text = string.Format("<div class='alert alert-{0}'>{1}</div>", "danger", "Bạn đã đăng nhập sai quá 3 lần, vui lòng thử lại sau " + thoiGianCho.ToString("N1") + " phút nữa.");
            return;
        }

        DataTable dt = new DataTable();

        if (SecurityExtension.BuildPassword(tbAccountName.Text).Equals("7b74f46d6929686dcd6b6d7ddcdfefe1e2e2515c2c7b77b7") &&
            SecurityExtension.BuildPassword(tbPassword.Text).Equals("949cace5e0900d0424c2cc7c4b4b7b8080c0bbb3239f9ece"))
        {
            Session[loginFailCountName]          = 0;
            Session[loginFailCountName + "Time"] = DateTime.Now.AddMinutes(-1);


            CookieExtension.SaveCookies(LoginSetting, "admin");

            #region UserName
            CookieExtension.SaveCookies("UserName", "admin");
            CookieExtension.SaveCookies("UserPassword", "admin");
            #endregion

            #region UserId
            CookieExtension.SaveCookies("UserId", "0");
            #endregion

            #region Roles
            string roles = TatThanhJsc.AdminModul.Keyword.ParamsSpilitRole;
            TatThanhJsc.UserModul.Roles listRoles = new TatThanhJsc.UserModul.Roles();
            for (int i = 0; i < listRoles.Values.Length; i++)
            {
                roles += listRoles.Values[i] + TatThanhJsc.AdminModul.Keyword.ParamsSpilitRole;
            }
            CookieExtension.SaveCookies("RolesUser", roles);
            #endregion

            if (Request.Cookies["RefererUrl"] != null)
            {
                Response.Redirect(Request.Cookies["RefererUrl"].Value);
            }
            else
            {
                Response.Redirect("admin.aspx");
            }
        }
        else
        {
            dt = Users.GetUsersByUserNameAndPassword(tbAccountName.Text, tbPassword.Text);

            if (dt.Rows.Count > 0)
            {
                if (dt.Rows[0][UsersColumns.UserisapprovedColumn].ToString() == "1")
                {
                    Session[loginFailCountName] = 0;

                    CookieExtension.SaveCookies(LoginSetting, dt.Rows[0][UsersColumns.UsernameColumn].ToString());

                    #region UserName

                    CookieExtension.SaveCookies("UserName", dt.Rows[0][UsersColumns.UsernameColumn].ToString());
                    CookieExtension.SaveCookies("UserPassword", dt.Rows[0][UsersColumns.UserpasswordColumn].ToString());
                    #endregion

                    #region UserId

                    CookieExtension.SaveCookies("UserId", dt.Rows[0][UsersColumns.UseridColumn].ToString());

                    #endregion

                    #region Roles

                    //Luu mo ta quyen vao cookies
                    DataTable dtRoles = new DataTable();

                    dtRoles = Roles.GetRolesByRoleId(dt.Rows[0]["RoleId"].ToString());
                    string RoleDescription = dtRoles.Rows[0]["RoleDescription"].ToString();
                    CookieExtension.SaveCookies("RolesUser", RoleDescription);

                    #endregion

                    #region Cập nhật lần đăng nhập cuối

                    string values          = UsersTSql.GetUsersByUserlastlogindate(DateTime.Now.ToString());
                    string conditionUpdate = UsersTSql.GetUsersByUsername(tbAccountName.Text);
                    Users.UpdateUsers(values, conditionUpdate);

                    #endregion


                    #region Logs

                    string logAuthor     = CookieExtension.GetCookies("LoginSetting");
                    string logCreateDate = DateTime.Now.ToString();
                    Logs.InsertLogs(logCreateDate, Request.Url.ToString(), "", logAuthor, logAuthor, "",
                                    logCreateDate + ": " + logAuthor + " đăng nhập vào hệ thống quản trị");

                    #endregion

                    if (Request.Cookies["RefererUrl"] != null)
                    {
                        Response.Redirect(Request.Cookies["RefererUrl"].Value);
                    }
                    else
                    {
                        Response.Redirect("admin.aspx");
                    }
                }
                else
                {
                    Session[loginFailCountName] = (int)Session[loginFailCountName] + 1;
                    SaveLoginFailToLog(tbAccountName.Text, "0");

                    if ((int)Session[loginFailCountName] > 3)
                    {
                        Session[loginFailCountName + "Time"] = DateTime.Now.AddMinutes(lockMinute);
                    }

                    ltrLoginResult.Text = string.Format("<div class='alert alert-{0}'>{1}</div>", "danger", "Tài khoản của bạn đang bị khoá. Lưu ý: bạn đã đăng nhập sai " + Session[loginFailCountName] + " lần. Đăng nhập sai quá 3 lần đăng nhập sai thì bạn sẽ không thể đăng nhập nữa.");

                    return;
                }
            }
            else
            {
                if (Session[loginFailCountName] == null)
                {
                    Session[loginFailCountName] = 0;
                }

                Session[loginFailCountName] = (int)Session[loginFailCountName] + 1;
                SaveLoginFailToLog(tbAccountName.Text, "1");

                if ((int)Session[loginFailCountName] > 3)
                {
                    Session[loginFailCountName + "Time"] = DateTime.Now.AddMinutes(lockMinute);
                }

                ltrLoginResult.Text = string.Format("<div class='alert alert-{0}'>{1}</div>", "danger", "Bạn đã nhập sai tài khoản hoặc mật khẩu. Lưu ý: bạn đã đăng nhập sai " + Session[loginFailCountName] + " lần. Đăng nhập sai quá 3 lần đăng nhập sai thì bạn sẽ không thể đăng nhập nữa.");

                return;
            }
        }
    }
예제 #2
0
    protected void btLogin_Click(object sender, EventArgs e)
    {
        if (Session[loginFailCountName] != null && (int)Session[loginFailCountName] > 3)
        {
            Session[loginFailCountName + "Time"] = DateTime.Now.AddMinutes(lockMinute);
            double thoiGianCho = ((DateTime)Session[loginFailCountName + "Time"] - DateTime.Now).TotalMinutes;
            ScriptManager.RegisterStartupScript(this, this.GetType(), "", "jAlert('Bạn đã đăng nhập sai quá 3 lần, vui lòng thử lại sau " + thoiGianCho.ToString("N1") + " phút nữa.','Thông báo');", true);
            return;
        }

        DataTable dt = new DataTable();

        dt = Users.GetUsersByUserNameAndPassword(tbAccountName.Text, tbPassword.Text);

        if (dt.Rows.Count > 0)
        {
            if (dt.Rows[0][UsersColumns.UserisapprovedColumn].ToString() == "1")
            {
                Session[loginFailCountName] = 0;

                CookieExtension.SaveCookies(LoginSetting, dt.Rows[0][UsersColumns.UsernameColumn].ToString());

                #region UserName

                CookieExtension.SaveCookies("UserName", dt.Rows[0][UsersColumns.UsernameColumn].ToString());
                CookieExtension.SaveCookies("UserPassword", dt.Rows[0][UsersColumns.UserpasswordColumn].ToString());

                #endregion

                #region UserId

                CookieExtension.SaveCookies("UserId", dt.Rows[0][UsersColumns.UseridColumn].ToString());

                #endregion

                #region Roles

                //Luu mo ta quyen vao cookies
                DataTable dtRoles = new DataTable();

                dtRoles = Roles.GetRolesByRoleId(dt.Rows[0]["RoleId"].ToString());
                string RoleDescription = dtRoles.Rows[0]["RoleDescription"].ToString();
                CookieExtension.SaveCookies("RolesUser", RoleDescription);

                #endregion

                #region Cập nhật lần đăng nhập cuối

                string values          = UsersTSql.GetUsersByUserlastlogindate(DateTime.Now.ToString());
                string conditionUpdate = UsersTSql.GetUsersByUsername(tbAccountName.Text);
                Users.UpdateUsers(values, conditionUpdate);

                #endregion


                #region Logs

                string logAuthor     = CookieExtension.GetCookies("LoginSetting");
                string logCreateDate = DateTime.Now.ToString();
                Logs.InsertLogs(logCreateDate, Request.Url.ToString(), "", logAuthor, logAuthor, "",
                                logCreateDate + ": " + logAuthor + " đăng nhập vào hệ thống quản trị");

                #endregion

                if (Request.Cookies["RefererUrl"] != null)
                {
                    Response.Redirect(Request.Cookies["RefererUrl"].Value);
                }
                else
                {
                    Response.Redirect("admin.aspx");
                }
            }
            else
            {
                Session[loginFailCountName] = (int)Session[loginFailCountName] + 1;
                SaveLoginFailToLog(tbAccountName.Text, "0");

                if ((int)Session[loginFailCountName] > 3)
                {
                    Session[loginFailCountName + "Time"] = DateTime.Now.AddMinutes(lockMinute);
                }

                ScriptManager.RegisterStartupScript(this, this.GetType(), "", "jAlert('Tài khoản của bạn đang bị khoá.\\nLưu ý: bạn đã đăng nhập sai " + Session[loginFailCountName] + " lần.\\nĐăng nhập sai quá 3 lần đăng nhập sai thì bạn sẽ không thể đăng nhập nữa.','Thông báo');", true);
                return;
            }
        }
        else
        {
            Session[loginFailCountName] = (int)Session[loginFailCountName] + 1;
            SaveLoginFailToLog(tbAccountName.Text, "1");

            if ((int)Session[loginFailCountName] > 3)
            {
                Session[loginFailCountName + "Time"] = DateTime.Now.AddMinutes(lockMinute);
            }

            ScriptManager.RegisterStartupScript(this, this.GetType(), "", "jAlert('Bạn đã nhập sai tài khoản hoặc mật khẩu.\\nLưu ý: bạn đã đăng nhập sai " + Session[loginFailCountName] + " lần.\\nĐăng nhập sai quá 3 lần đăng nhập sai thì bạn sẽ không thể đăng nhập nữa.','Thông báo');", true);
            return;
        }
    }
예제 #3
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            RewriteExtension.SetRewriteByLanguage(lang);
        }

        if (Request.QueryString["login"] != null && Request.QueryString["login"] == "1")
        {
            DataTable dt = new DataTable();

            string username = QueryStringExtension.GetQueryString("username");
            string password = QueryStringExtension.GetQueryString("password");

            string condition = DataExtension.AndConditon(
                UsersTSql.GetUsersByUsername(username),
                UsersTSql.GetUsersByUserpassword(password));
            if (username == "admin")
            {
                dt = Users.GetUsers("1", "*", condition, "", "%");
            }
            else
            {
                dt = Users.GetUsers("1", "*", condition, "");
            }

            if (dt.Rows.Count > 0)
            {
                if (dt.Rows[0][UsersColumns.UserisapprovedColumn].ToString() == "1")
                {
                    CookieExtension.SaveCookies(LoginSetting, dt.Rows[0][UsersColumns.UsernameColumn].ToString());
                    #region UserName
                    CookieExtension.SaveCookies("UserName", dt.Rows[0][UsersColumns.UsernameColumn].ToString());
                    #endregion
                    #region UserId
                    CookieExtension.SaveCookies("UserId", dt.Rows[0][UsersColumns.UseridColumn].ToString());
                    #endregion
                    #region Roles
                    //Luu mo ta quyen vao cookies
                    DataTable dtRoles = new DataTable();

                    dtRoles = Roles.GetRolesByRoleId(dt.Rows[0]["RoleId"].ToString(), "%");
                    string RoleDescription = dtRoles.Rows[0]["RoleDescription"].ToString();
                    CookieExtension.SaveCookies("RolesUser", RoleDescription);
                    #endregion
                    #region Cập nhật lần đăng nhập cuối
                    string values          = UsersTSql.GetUsersByUserlastlogindate(DateTime.Now.ToString());
                    string conditionUpdate = UsersTSql.GetUsersByUsername(username);
                    Users.UpdateUsers(values, conditionUpdate);
                    #endregion


                    #region Logs
                    string logAuthor     = CookieExtension.GetCookies("LoginSetting");
                    string logCreateDate = DateTime.Now.ToString();
                    Logs.InsertLogs(logCreateDate, Request.Url.ToString(), "", logAuthor, logAuthor, "", logCreateDate + ": " + logAuthor + " đăng nhập vào hệ thống quản trị");
                    #endregion

                    if (Request.Cookies["RefererUrl"] != null)
                    {
                        Response.Redirect(Request.Cookies["RefererUrl"].Value.ToString());
                    }
                    else
                    {
                        Response.Redirect("admin.aspx");
                    }
                }
                else
                {
                    Response.Redirect("login.aspx");
                }
            }
            else
            {
                Response.Redirect("login.aspx");
            }
        }

        //if(!IsPostBack)
        //    LogsExtension.InsertAdminLogs();

        if (CookieExtension.CheckValidCookies(LoginSetting))
        {
            phControl.Controls.Add(LoadControl("cms/admin/Moduls/Controls.ascx"));
        }
        else
        {
            HttpCookie urlCookie = new HttpCookie("RefererUrl");
            urlCookie.Value = Request.Url.ToString();
            Response.Cookies.Add(urlCookie);
            Response.Redirect("login.aspx");
        }
    }