zoukankan      html  css  js  c++  java
  • 在线修改ServU密码注意问题。

            /// <summary>
            
    /// 检查用户名密码是否匹配
            
    /// </summary>
            
    /// <param name="user">用户名</param>
            
    /// <param name="pass">用户密码</param>
            
    /// <returns>是否匹配</returns>
            public Boolean CheckPasswordByUser(string user,string pass)
            {
                string sqlstring = string.Format("select Password from [User accounts] where [User]='{0}'", user);
                object o=dbServU.GetSingle(sqlstring);
                if (o != null)
                {
                    string dbPass = (string)o;
                    if (dbPass.Length > 32)
                    {
                        char a, b;
                        a = dbPass[0];
                        b = dbPass[1];
                        string password = string.Format("{0}{1}{2}", a, b, pass);
                        password = FormsAuthentication.HashPasswordForStoringInConfigFile(password, "MD5");
                        password = string.Format("{0}{1}{2}", a, b, password.ToUpper());
                        if (dbPass == password)
                            return true;
                    }
                }
                return false;
            }

            /// <summary>
            
    /// 生成新ServU格式密码
            
    /// </summary>
            
    /// <param name="pass">密码</param>
            
    /// <returns>生成的新密码</returns>
            public string GenNewPass(string pass)
            {
                Random rnm = new Random();
                char a = (char)(rnm.Next(97123));
                char b = (char)(rnm.Next(97123));
                string password = string.Format("{0}{1}{2}", a, b, pass);
                password = FormsAuthentication.HashPasswordForStoringInConfigFile(password, "MD5");
                pass = string.Format("{0}{1}{2}", a, b, password.ToUpper());
                return pass;
            }

            /// <summary>
            
    /// 更改密码
            
    /// </summary>
            
    /// <param name="user">用户名</param>
            
    /// <param name="newPass">新密码</param>
            
    /// <returns>是否成功</returns>
            public Boolean ResetPass(string user,string newPass)
            {
                string sqlstring = string.Format("select Password from [User accounts] where [User]='{0}'", user);
                object o=dbServU.GetSingle(sqlstring);
                if (o != null)
                {
                    sqlstring = string.Format("update  [User accounts] set password='{0}' where [User]='{1}'", GenNewPass(newPass), user);
                    if (dbServU.ExcuteSQL(sqlstring) > 0)
                        return true;
                }
                return false;
            }

    密码修改成功后,在注意在ServU中设置Allow user to change password。不然,修改之后密码和新密码都无法正常登录FTP。 

  • 相关阅读:
    mupdf-将pdf转png图片
    Teamcenter二次开发-客户端JAVA开发挂菜单HelloWorld例子
    SqlServer-导入excel表格数据
    PDFlib创建pdf文档
    计算机网络基础知识总结-转载
    到底什么是架构?回答你关于软件架构的所有疑惑。
    SQL语句-获得表的字段数量
    vue3.0---watch使用方法
    小程序picker自定义三级联动
    无法加载文件 D:Program Files odejs ode_globalvue.ps1,因为在此系统上禁止运行脚本。有关详细信息
  • 原文地址:https://www.cnblogs.com/leotan/p/2736633.html
Copyright © 2011-2022 走看看