示例#1
0
文件: frmAD.cs 项目: hxun/RTXLDAP
        public void UserAuthObj_OnRecvUserAuthRequest(string name, string pwd, out RTXSAPI_USERAUTH_RESULT pResult)
        {
            listBox1.BeginInvoke(onLogin, name, pwd);

            DirectoryEntry entry = new DirectoryEntry();
            int            nRet;

            try
            {
                entry.Path               = string.Format("LDAP://{0}", txtDomainName.Text.Trim());
                entry.Username           = name;
                entry.Password           = pwd;
                entry.AuthenticationType = AuthenticationTypes.Secure;
                entry.RefreshCache();

                DirectorySearcher search = new DirectorySearcher(entry);
                search.Filter = "(SAMAccountName=" + name + ")";
                search.PropertiesToLoad.Add("cn");
                SearchResult result = search.FindOne();

                if (null == result)
                {
                    nRet = 100;
                }
                else
                {
                    nRet = 0;
                }
            }
            catch
            {
                nRet = 2;
            }

            if (nRet == 0)
            {
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_OK;
            }
            else if (nRet == 1)
            {
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_FAIL;
            }
            else if (nRet == 2)
            {
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_ERRPWD;
            }
            else
            {
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_ERRNOUSER;
            }
        }
示例#2
0
        public void UserAuthObj_OnRecvUserAuthRequest(string bstrUserName, string bstrPwd, out RTXSAPI_USERAUTH_RESULT pResult)
        {
            pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_ERRNOUSER;
            LDAP ldap  = new LDAP();
            bool login = false;

            login = ldap.CheckADUser(domain, bstrUserName, bstrPwd);

            if (login)
            {
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_OK;                              //设置认证成功,客户端将正常登录
                //RTX_LDAP.WriteLog.LogManager.WriteLog(RTX_LDAP.WriteLog.LogFile.Trace, "用户登录成功:" + bstrUserName);//写入日志到文件
                EventLog.WriteEntry("RTX", "用户登录成功:" + bstrUserName, EventLogEntryType.Information, 8815); //系统日志
            }

            else
            {
                LDAP ldaperror = new LDAP();
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_ERRNOUSER;                                                    //设置认证失败,客户端弹出相应提示
                //RTX_LDAP.WriteLog.LogManager.WriteLog(RTX_LDAP.WriteLog.LogFile.Error, "用户登录失败:" + bstrUserName);//写入日志到文件
                EventLog.WriteEntry("RTX", "用户登录失败:" + bstrUserName + "\nERROR:" + ldaperror.errorinfo, EventLogEntryType.Error, 8805); //系统日志
            }
        }
示例#3
0
文件: frmAD.cs 项目: tangck/RTXLDAP
        public void UserAuthObj_OnRecvUserAuthRequest(string name, string pwd, out RTXSAPI_USERAUTH_RESULT pResult)
        {
            listBox1.BeginInvoke(onLogin, name, pwd);

            DirectoryEntry entry = new DirectoryEntry();
            int nRet;
            try
            {
                entry.Path = string.Format("LDAP://{0}", txtDomainName.Text.Trim());
                entry.Username = name;
                entry.Password = pwd;
                entry.AuthenticationType = AuthenticationTypes.Secure;
                entry.RefreshCache();

                DirectorySearcher search = new DirectorySearcher(entry);
                search.Filter = "(SAMAccountName=" + name + ")";
                search.PropertiesToLoad.Add("cn");
                SearchResult result = search.FindOne();

                if (null == result)
                {
                    nRet = 100;
                }
                else
                {
                    nRet = 0;
                }
            }
            catch
            {
                nRet = 2;
            }

            if (nRet == 0)
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_OK;
            else if (nRet == 1)
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_FAIL;
            else if (nRet == 2)
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_ERRPWD;
            else
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_ERRNOUSER;
        }
示例#4
0
文件: RTX.cs 项目: 080779/myProject
        public void UserAuthObj_OnRecvUserAuthRequest(string bstrUserName, string bstrPwd, out RTXSAPI_USERAUTH_RESULT pResult)
        {
            ADC = Helper.DeserializeFromXML <ADConfig>(FilePath);
            string path = null;

            if (ADC != null)
            {
                path = ADC.DoMainPath;
            }
            AdOperate ado = new AdOperate();
            //bool login = ldap.IsAuthenticated(FrmRtxLdapPlugin.dc, bstrUserName, bstrPwd);
            bool login = ado.CheckADUser(path, bstrUserName, bstrPwd);

            if (login)
            {
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_OK;//设置认证成功,客户端将正常登录
                //RTX_LDAP.WriteLog.LogManager.WriteLog(RTX_LDAP.WriteLog.LogFile.Trace, "用户登录成功:" + bstrUserName);//写入日志到文件
                //EventLog.WriteEntry("RTX", "用户登录成功:" + bstrUserName, EventLogEntryType.Information, 8815);//系统日志
            }

            else
            {
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_ERRNOUSER;//设置认证失败,客户端弹出相应提示
                //RTX_LDAP.WriteLog.LogManager.WriteLog(RTX_LDAP.WriteLog.LogFile.Error, "用户登录失败:" + bstrUserName);//写入日志到文件
                //EventLog.WriteEntry("RTX", "用户登录失败:" + bstrUserName, EventLogEntryType.Error, 8805);//系统日志
            }
        }
示例#5
0
文件: MainWindow.cs 项目: GameSA/tale
        public void UserAuthObj_OnRecvUserAuthRequest(string bstrUserName, string bstrPwd, out RTXSAPI_USERAUTH_RESULT pResult)
        {
            DirectoryEntry entry = new DirectoryEntry();

            string strAuthContent = "";
            string ldap_uname = bstrUserName.Substring(0, bstrUserName.IndexOf('@'));

            try
            {
                entry.Path = string.Format("LDAP://{0}", _DomainName);
                entry.Username = ldap_uname;
                entry.Password = bstrPwd;
                entry.AuthenticationType = AuthenticationTypes.Secure;
                entry.RefreshCache();

                DirectorySearcher search = new DirectorySearcher(entry);
                search.Filter = "(samaccountname=" + bstrUserName.Substring(0, bstrUserName.IndexOf('@')) + ")";
                search.PropertiesToLoad.Add("cn");
                SearchResult result = search.FindOne();

                if (null == result)
                {
                    nRet = 100;
                }
                else
                {
                    nRet = 0;
                }
            }
            catch
            {
                nRet = 2;
            }

            strAuthContent += DateTime.Now.ToString("yy-MM-dd HH:mm:ss") + "| UserName: "******"; Result: " + nRet + Environment.NewLine;

            this.authExecuteResultTxtBox.BeginInvoke(updateAuthResult, strAuthContent);

            if (nRet == 0)
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_OK;//������֤�ɹ����ͻ��˽�������¼
            else if (nRet == 1)
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_FAIL;//������֤ʧ�ܣ��ͻ��˽�������¼ʧ����ʾ
            else if (nRet == 2)
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_ERRPWD;//�����û����������֤ʧ�ܣ��ͻ��˽������û����������ʾ
            else
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_ERRNOUSER;//������֤ʧ�ܣ��ͻ��˵�����Ӧ��ʾ
        }
示例#6
0
        public void UserAuthObj_OnRecvUserAuthRequest(string bstrUserName, string bstrPwd, out RTXSAPI_USERAUTH_RESULT pResult)
        {
            DirectoryEntry entry = new DirectoryEntry();

            string strAuthContent = "";
            string ldap_uname     = bstrUserName.Substring(0, bstrUserName.IndexOf('@'));

            try
            {
                entry.Path               = string.Format("LDAP://{0}", _DomainName);
                entry.Username           = ldap_uname;
                entry.Password           = bstrPwd;
                entry.AuthenticationType = AuthenticationTypes.Secure;
                entry.RefreshCache();

                DirectorySearcher search = new DirectorySearcher(entry);
                search.Filter = "(samaccountname=" + bstrUserName.Substring(0, bstrUserName.IndexOf('@')) + ")";
                search.PropertiesToLoad.Add("cn");
                SearchResult result = search.FindOne();

                if (null == result)
                {
                    nRet = 100;
                }
                else
                {
                    nRet = 0;
                }
            }
            catch
            {
                nRet = 2;
            }

            strAuthContent += DateTime.Now.ToString("yy-MM-dd HH:mm:ss") + "| UserName: "******"; Result: " + nRet + Environment.NewLine;

            this.authExecuteResultTxtBox.BeginInvoke(updateAuthResult, strAuthContent);

            if (nRet == 0)
            {
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_OK;//设置认证成功,客户端将正常登录
            }
            else if (nRet == 1)
            {
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_FAIL;//设置认证失败,客户端将弹出登录失败提示
            }
            else if (nRet == 2)
            {
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_ERRPWD;//设置用户密码错误,认证失败,客户端将弹出用户密码错误提示
            }
            else
            {
                pResult = RTXSAPI_USERAUTH_RESULT.RTXSAPI_USERAUTH_RESULT_ERRNOUSER;//设置认证失败,客户端弹出相应提示
            }
        }