Example #1
0
        /// <summary>
        /// 检查密码
        /// </summary>
        /// <param name="username">用户名</param>
        /// <param name="password">密码</param>
        /// <param name="originalpassword">是否非MD5密码</param>
        /// <returns>如果正确则返回用户id, 否则返回-1</returns>
        public int CheckPassword(string username, string password, bool originalpassword)
        {
            DiscuzPasswordAuthInfo dai = GetPasswordAuthInfo(username, password, originalpassword);
            int uid = -1;

            if (dai != null && dai.Uid > 0)
            {
                uid = dai.Uid;
            }

            return(uid);
        }
Example #2
0
        public int CheckPassword(string username, string password, bool originalpassword, out int groupid, out int adminid)
        {
            int uid = -1;

            groupid = 7;
            adminid = 0;
            DiscuzPasswordAuthInfo dai = GetPasswordAuthInfo(username, password, originalpassword);

            if (dai != null && dai.Uid > 0)
            {
                uid     = dai.Uid;
                groupid = dai.Groupid;
                adminid = dai.Adminid;
            }

            return(uid);
        }
Example #3
0
        internal static DiscuzPasswordAuthInfo GetPasswordAuthInfo(string username, string password, bool originalpassword)
        {
            DiscuzPasswordAuthInfo p = new DiscuzPasswordAuthInfo();

            SafeProcedure.ExecuteAndMapRecords(
                Database.GetDatabase(D4DDefine.JaneBBSDBInstanceName),
                "newbbs.dnt_checkpasswordbyusername",
                delegate(IRecord record)
            {
                p.Uid     = record.GetInt32OrDefault(0, 0);
                p.Groupid = record.GetInt16OrDefault(1, 0);
                p.Adminid = record.GetInt32OrDefault(2, 0);
            },
                username,
                originalpassword ? Utils.MD5(password) : password);

            return(p);
        }