Esempio n. 1
0
        /// <summary>
        /// 验证用户登陆,检查账号\密码\账号状态
        /// </summary>
        /// <param name="UserName"></param>
        /// <param name="Password"></param>
        /// <returns></returns>
        public AD_Enum.LoginResult  Login(string UserName, string Password)
        {
            //如果是系统管理员或公司管理员,不验证活动目录
//			if(System.Web.HttpContext.Current.Session["LoginType"]!=null
//				&& (System.Web.HttpContext.Current.Session["LoginType"].ToString()=="1" ||
//				System.Web.HttpContext.Current.Session["LoginType"].ToString()=="2"))
//				return AD_Enum.LoginResult.LOGIN_OK;

            if (IsUserValid(UserName, Password))
            {
                DirectoryEntry de = Iads.GetUserEntry(UserName);
                if (de != null)
                {
                    int userAccountControl = Convert.ToInt32(de.Properties["userAccountControl"][0]);
                    de.Close();
                    if (!IsAccountActive(userAccountControl))
                    {
                        return(AD_Enum.LoginResult.LOGIN_USER_ACCOUNT_INACTIVE);
                    }
                    else if (IsPWDExipred(userAccountControl))
                    {
                        return(AD_Enum.LoginResult.LOGIN_USER_PWD_EXPIRED);
                    }
                    else
                    {
                        return(AD_Enum.LoginResult.LOGIN_OK);
                    }
                }
                else
                {
                    return(AD_Enum.LoginResult.LOGIN_USER_DOESNT_EXIST);
                }
            }
            else
            {
                return(AD_Enum.LoginResult.LOGIN_USER_DOESNT_EXIST);
            }
        }
Esempio n. 2
0
        /// <summary>
        /// 设置帐号信息
        /// </summary>
        /// <param name="cn">账号</param>
        /// <param name="dt">givenName名,sn姓,displayName显示名字,description显示说明,telephoneNumber,mail</param>
        /// <returns></returns>
        public bool SetGeneral(string cn, DataTable dt, byte state)
        {
            bool           result = false;
            string         xx     = "";
            DirectoryEntry usr    = Iads.GetUserEntry(cn);

            try
            {
                //常规
                //姓名,性别,民族,学历,电子邮箱,手机号码,电话号码,家庭电话,通讯地址,家庭地址
                //usr.Properties["description"].Value = InitValue(dt.Rows[0]["NumName"]);//姓名

                usr.Properties["sn"].Value                   = InitValue(cn);                           //员工帐号
                usr.Properties["displayName"].Value          = InitValue(dt.Rows[0]["NumName"]);        //姓名
                usr.Properties["mail"].Value                 = InitValue(dt.Rows[0]["Email"]);          //电子邮箱
                usr.Properties["mobile"].Value               = InitValue(dt.Rows[0]["Mobile"]);         //手机号码
                usr.Properties["extensionAttribute1"].Value  = "1111";                                  //判断系统操作是否成功
                usr.Properties["extensionAttribute3"].Value  = InitValue(dt.Rows[0]["Sex"]);            //性别
                usr.Properties["extensionAttribute4"].Value  = InitValue(dt.Rows[0]["Nation"]);         //民族
                usr.Properties["extensionAttribute5"].Value  = InitValue(dt.Rows[0]["EduLevel"]);       //学历
                usr.Properties["extensionAttribute6"].Value  = InitValue(dt.Rows[0]["HomeTel"]);        //家庭电话
                usr.Properties["extensionAttribute7"].Value  = InitValue(dt.Rows[0]["ContactAddress"]); //通讯地址
                usr.Properties["extensionAttribute8"].Value  = InitValue(dt.Rows[0]["FamilyAddress"]);  //家庭地址
                usr.Properties["extensionAttribute9"].Value  = InitValue(dt.Rows[0]["CreateOptions"]);  //开通选项
                usr.Properties["extensionAttribute10"].Value = InitValue(dt.Rows[0]["extention10"]);    //门户需要信息
                usr.Properties["extensionAttribute11"].Value = InitValue(dt.Rows[0]["NumId"]);          //	员工代码
                usr.Properties["extensionAttribute12"].Value = InitValue(dt.Rows[0]["CardId"]);         //身份证号
                usr.Properties["extensionAttribute13"].Value = InitValue(dt.Rows[0]["NumState"]);       //员工状态
                usr.Properties["extensionAttribute14"].Value = InitValue(dt.Rows[0]["IsMarry"]);        //是否已婚
                usr.Properties["extensionAttribute15"].Value = InitValue(dt.Rows[0]["Birthday"]);       //生日

                usr.Properties["pager"].Value = InitValue(dt.Rows[0]["IsTopMan"]);                      //是否总部人员(寻呼机)

                usr.Properties["department"].Value  = InitValue(dt.Rows[0]["OrgName"]);                 //部门
                usr.Properties["company"].Value     = InitValue(dt.Rows[0]["CorpName"]);                //公司名称
                usr.Properties["title"].Value       = InitValue(dt.Rows[0]["PostName"]);                //职位
                usr.Properties["wWWHomePage"].Value = InitValue(dt.Rows[0]["DynamicPwd"]);              //动态密码卡

                usr.Properties["l"].Value = state.ToString();                                           //==4

                usr.CommitChanges();
                result = true;
            }
            catch
            {
                result = false;
            }
            finally
            {
                usr.Close();
            }
            return(result);
        }