protected void Page_Load(object sender, EventArgs e) { // string szTemp = Decode("YXRnMTc4Z2hqa285ODJnbTIyMDgwMjE5ODAwOTE2MTcxMGZnaGVydDYyMXl1aWxzcDExMTExMXB3"); //123 //345 string szINFO = "10035209X(J@L*!IA20160322"; string EnPswdStr = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(szINFO, "MD5"); //社科院单点登录 string szUserInfo = Request.QueryString["userinfo"]; if (szUserInfo != null) { string szA = "atg178ghjko982gm"; string szB = "fghert621yuilsp"; string szC = "pwfgcvb"; Logger.trace("szUserInfo=" + szUserInfo); string szCodwIn = Decode(szUserInfo); Logger.trace("szCodwIn=" + szCodwIn); int nA = szCodwIn.IndexOf(szA) + szA.Length; Logger.trace("nA=" + nA); int nB = szCodwIn.IndexOf(szB) + szB.Length; Logger.trace("nB=" + nB); int nC = szCodwIn.IndexOf(szC) + szC.Length; Logger.trace("nC=" + nC); string logonnameCode = szCodwIn.Substring(nA, szCodwIn.IndexOf(szB) - nA); string passwordCode = szCodwIn.Substring(nB, szCodwIn.IndexOf(szC) - nB); Logger.trace("logonnameCode=" + logonnameCode); Logger.trace("passwordCode=" + passwordCode); LoginUseInfo loginUserInfo = new LoginUseInfo(); loginUserInfo.szLogoName = logonnameCode; loginUserInfo.szPassword = "******"; Session["LoginUseInfo"] = loginUserInfo; } Response.Redirect("pages/default.aspx" + HttpContext.Current.Request.Url.Query); /* * string szStartTime = ddlStartTime.SelectedItem.Text.ToString(); * string szEndTime = ddlEndTime.SelectedItem.Text.ToString(); * * for (int i = 8; i < 22; i++) * { * for (int j = 0; j <= 50; j = j + 10) * { * ListItem item1 = new ListItem(i.ToString("00") + ":" + j.ToString("00"), i.ToString("00") + j.ToString("00")); * ddlStartTime.Items.Add(item1); * } * } * for (int i = 8; i < 22; i++) * { * for (int j = 0; j <= 50; j = j + 10) * { * ListItem item1 = new ListItem(i.ToString("00") + ":" + j.ToString("00"), i.ToString("00") + j.ToString("00")); * ddlEndTime.Items.Add(item1); * } * } */ }
protected void Page_Load(object sender, EventArgs e) { Session["devInfo"] = null; string szUrl = Request.Url.ToString(); if (szUrl != null && szUrl != "") { string szPassword = ""; string szLogonName = ""; if (IsCheckLogin(szUrl, out szLogonName, out szPassword)) { Logger.trace("url1"); LoginIn(szLogonName, szPassword); } if (Request["op"] != "Logout" && Session["LoginUseInfo"] != null) { LoginUseInfo login = (LoginUseInfo)Session["LoginUseInfo"]; if (login.szLogoName != null && login.szLogoName != "" && login.szPassword != null) { LoginIn(login.szLogoName, login.szPassword); } } } //else { Response.Redirect("~/loginall.aspx"); Response.End(); } if (Request["op"] == "Logout") { Logout(); } }
private bool GetUserInfoFromUrl(string uid, string szSignKey) { //string szKey = "G(Z@L*!IA"; //华东科大的Key string szKey = "X(J@L*!IA"; string szDate = DateTime.Now.ToString("yyyyMMdd"); string ma5 = uid + szKey + szDate; string EnPswdStr = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(ma5, "MD5"); if (szSignKey.ToLower() == EnPswdStr.ToLower()) { LoginUseInfo info = new LoginUseInfo(); info.szPassword = szPasswd; info.szLogoName = uid; Session["LoginUseInfo"] = info; Logger.trace(uid + "微信跳转登录成功"); Logger.trace("登录账户:" + uid); Response.Redirect("clientweb/m/ic2/default.aspx?version=" + szVersion); return(true); } else { Logger.trace(uid + "微信跳转登录失败;本地加密:" + EnPswdStr + ";传入加密值:" + szSignKey); return(false); } }
public bool getZhenyun(string verify, string name, string datetime, string jsName) { //string szKey = "G(Z@L*!IA"; //华东科大的Key string szKey = "nwnu_zwyy"; string szDate = DateTime.Now.ToString("yyyyMMdd"); string ma5 = name + datetime + jsName + szKey; string EnPswdStr = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(ma5, "md5"); if (verify.ToLower() == EnPswdStr.ToLower()) { LoginUseInfo info = new LoginUseInfo(); info.szPassword = szPasswd; info.szLogoName = name; Session["LoginUseInfo"] = info; Logger.trace(name + "微信跳转登录成功"); Logger.trace("登录账户:" + name); // Response.Write(uid+"__"+szPasswd); // return true; Response.Redirect("clientweb/m/ic2/default.aspx?version=" + szVersion); return(true); } else { Logger.trace(name + "微信跳转登录失败;本地加密:" + EnPswdStr + ";传入加密值:" + verify); return(false); } }
protected void Page_Load(object sender, EventArgs e) { WriteTxt("info"); string szUrl = Request.Url.ToString(); if (szUrl != null && szUrl != "") { string szPassword = ""; string szLogonName = ""; if (IsCheckLogin(szUrl, out szLogonName, out szPassword)) { LoginIn(szLogonName, szPassword); } if (Request["op"] != "Logout" && Session["LoginUseInfo"] != null) { LoginUseInfo login = (LoginUseInfo)Session["LoginUseInfo"]; if (login.szLogoName != null && login.szLogoName != "" && login.szPassword != null) { LoginIn(login.szLogoName, login.szPassword); } } } if (Request["op"] == "Logout") { Logout(); } }
public void wanxiao() { try { string szAppcode = Request["code"]; string FormURL = szauthUrl; //处理表单的绝对URL地址 string FormData = "code=" + szAppcode + "&client_id=" + client_id + "&client_secret=" + client_secret + "&redirect_uri=" + (szoutUrl) + "&grant_type=authorization_code"; string postString = FormData; // "arg1=a&arg2=b";//这里即为传递的参数,可以用工具抓包分析,也可以自己分析,主要是form里面每一个name都要加进来 byte[] postData = Encoding.UTF8.GetBytes(postString); //编码,尤其是汉字,事先要看下抓取网页的编码方式 string url = FormURL + "/accessToken"; //地址 ServicePointManager.ServerCertificateValidationCallback += RemoteCertificateValidate; WebClient webClient = new WebClient(); webClient.Headers.Add("Content-Type", "application/x-www-form-urlencoded"); //采取POST方式必须加的header,如果改为GET方式的话就去掉这句话即可 byte[] responseData = webClient.UploadData(url, "POST", postData); //得到返回字符流 string WebContent = Encoding.UTF8.GetString(responseData); //解码 //第二次请求 string szTemp = "access_token"; int iPoststart = WebContent.IndexOf(szTemp) + szTemp.Length + 3; int iPostend = WebContent.LastIndexOf("\""); string szTockent = WebContent.Substring(iPoststart, iPostend - iPoststart); WebClient webClient2 = new WebClient(); string url2 = szauthUrl + "/1/user/base_senior?access_token=" + szTockent; Encoding enc = Encoding.GetEncoding("UTF-8"); Byte[] pageData = webClient2.DownloadData(url2); string WebContent2 = enc.GetString(pageData); if (!string.IsNullOrEmpty(WebContent2)) { string szLogonName = GetStrInfoJsonIndex(WebContent2, "outid", true); if (szLogonName != "") { LoginUseInfo loginUserInfo = new LoginUseInfo(); loginUserInfo.szLogoName = szLogonName; loginUserInfo.szPassword = "******"; Session["LoginUseInfo"] = loginUserInfo; Response.Redirect("clientweb/m/ic2/default.aspx?version=" + szVersion); } } } catch (Exception e) { Response.Write(e.ToString()); } }
protected void Page_Load(object sender, EventArgs e) { string szAll = "0"; /* * try * { * szAll = System.Web.Configuration.WebConfigurationManager.AppSettings["loginAll"]; * } * catch * { * } * if (szAll == "1") * { * szLogonName.Enabled = false; * szPassword.Enabled = false; * Button_Logon.Text = "不能直接登录"; * Button_Logon.Enabled = false; * return; * } */ string szUrl = Request.Url.ToString(); //Logger.trace("szURL="+szUrl); if (szUrl != null && szUrl != "") { string szPassword = ""; string szLogonName = ""; if (IsCheckLogin(szUrl, out szLogonName, out szPassword)) { LoginIn(szLogonName, szPassword); } if (Request["op"] != "Logout" && Session["LoginUseInfo"] != null) { LoginUseInfo login = (LoginUseInfo)Session["LoginUseInfo"]; Logger.trace("passwd=" + login.szPassword); Logger.trace("szLogonName=" + login.szLogoName); if (login.szLogoName != null && login.szLogoName != "" && login.szPassword != null) { LoginIn(login.szLogoName, login.szPassword); } } } if (Request["op"] == "Logout") { Logout(); } }
public void weixin() { string code = Request.QueryString["code"]; Logger.trace("weixincode=" + code); if (String.IsNullOrEmpty(code)) { Response.Redirect("https://open.weixin.qq.com/connect/oauth2/authorize?appid=" + CorpID + "&redirect_uri=" + redirect_uri + "&response_type=code&scope=SCOPE&agentid=" + AgentID + "&state=STATE#wechat_redirect"); Response.Redirect("https://open.weixin.qq.com/connect/oauth2/authorize?appid=" + CorpID + "&redirect_uri=" + redirect_uri + "&response_type=code&scope=SCOPE&agentid=" + AgentID + "&state=STATE#wechat_redirect"); return; } string netid = null; string ACCESS_TOKEN = GetAccessToken(); ServicePointManager.ServerCertificateValidationCallback += new RemoteCertificateValidationCallback(ValidateCertificate); string validateurl = "https://qyapi.weixin.qq.com/cgi-bin/user/getuserinfo?access_token=" + ACCESS_TOKEN + "&code=" + code; StreamReader Reader = new StreamReader(new WebClient().OpenRead(validateurl)); string resp = Reader.ReadToEnd(); Logger.trace(resp); Hashtable token = JSON.parse <Hashtable>(resp); if (token != null) { netid = (string)token["UserId"]; LoginUseInfo loginUserInfo = new LoginUseInfo(); loginUserInfo.szLogoName = netid; loginUserInfo.szPassword = "******"; Session["LoginUseInfo"] = loginUserInfo; Response.Redirect("clientweb/m/ic2/default.aspx?version=" + szVersion); } if (netid == null) { Logger.Trace("身份验证失败"); } else { } }
private void GetUserInfoFromUrl(string szSN)//超星 { string szInfo = Decrypt_DES(szSN, strDesKey); string szLogonNameS = "<uid>"; string szLogonNameE = "</uid>"; string szPasswdS = "<pwd>"; string szPasswdE = "</pwd>"; int nLogonNameS = szInfo.IndexOf(szLogonNameS); int nLogonNameE = szInfo.IndexOf(szLogonNameE); string szLogonName = ""; try { szLogonName = szInfo.Substring(nLogonNameS + szLogonNameS.Length, nLogonNameE - nLogonNameS - szLogonNameS.Length); } catch { } int nPasswdS = szInfo.IndexOf(szPasswdS); int nPasswdE = szInfo.IndexOf(szPasswdE); string szPasswd = ""; try { szPasswd = szInfo.Substring(nPasswdS + szPasswdS.Length, nPasswdE - nPasswdS - szPasswdS.Length); } catch { } if (szLogonName != null && szLogonName != "") { LoginUseInfo info = new LoginUseInfo(); info.szPassword = szPasswd; info.szLogoName = szLogonName; Session["LoginUseInfo"] = info; // Response.Write(info.szLogoName + ":psd=:" + info.szPassword); Logger.trace("szLogonName=" + szLogonName + ";szPasswd=" + szPasswd); // Response.End(); Response.Redirect("clientweb/default.aspx?version=" + szVersion); } }
private bool GetUserInfoFromUrl(string uid, string szSignKey) { string szKey = "X(J@L*!IA"; string szDate = DateTime.Now.ToString("yyyyMMdd"); string ma5 = uid + szKey; string ma5Next = ma5 + DateTime.Now.AddDays(1).ToString("yyyyMMdd"); ma5 = ma5 + szDate; string EnPswdStr = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(ma5, "MD5"); string EnPswdStrNext = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(ma5Next, "MD5"); if (szSignKey.ToLower() == EnPswdStr.ToLower() || szSignKey.ToLower() == EnPswdStrNext.ToLower()) { LoginUseInfo info = new LoginUseInfo(); info.szPassword = szPasswd; info.szLogoName = uid; Session["LoginUseInfo"] = info; Logger.trace(uid + "微信跳转登录成功"); Logger.trace("登录账户:" + uid); // Response.Write(uid+"__"+szPasswd); // return true; string szUrl = "clientweb/m/ic2/default.aspx?version=" + szVersion; if (!string.IsNullOrEmpty(Request["syskind"])) { szUrl = szUrl + "&syskind=" + Request["syskind"]; } Response.Redirect(szUrl); return(true); } else { Logger.trace(uid + "微信跳转登录失败;本地加密:" + EnPswdStr + ";传入加密值:" + szSignKey); return(false); } }
private void GetUserInfoFromUrl(string szSN) { string szInfo = Decrypt_DES(szSN, strDesKey); string szLogonNameS = "<uid>"; string szLogonNameE = "</uid>"; string szPasswdS = "<pwd>"; string szPasswdE = "</pwd>"; int nLogonNameS = szInfo.IndexOf(szLogonNameS); int nLogonNameE = szInfo.IndexOf(szLogonNameE); string szLogonName = ""; try { szLogonName = szInfo.Substring(nLogonNameS + szLogonNameS.Length, nLogonNameE - nLogonNameS - szLogonNameS.Length); } catch { } int nPasswdS = szInfo.IndexOf(szPasswdS); int nPasswdE = szInfo.IndexOf(szPasswdE); string szPasswd = ""; try { szPasswd = szInfo.Substring(nPasswdS + szPasswdS.Length, nPasswdE - nPasswdS - szPasswdS.Length); } catch { } if (szLogonName != null && szLogonName != "") { LoginUseInfo info = new LoginUseInfo(); info.szPassword = szPasswd; info.szLogoName = szLogonName; Session["LoginUseInfo"] = info; } }
private bool GetUserInfoFromUrl(string uid, string szSignKey) { string szKey = "G(Z@L*!IA"; string szDate = DateTime.Now.ToString("yyyyMMdd"); string ma5 = uid + szKey + szDate; string EnPswdStr = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(ma5, "MD5"); if (szSignKey == EnPswdStr) { LoginUseInfo info = new LoginUseInfo(); info.szPassword = szPasswd; info.szLogoName = uid; Session["LoginUseInfo"] = info; Logger.trace(uid + "微信跳转登录成功"); return(true); } else { Logger.trace(uid + "微信跳转登录失败;本地加密:" + EnPswdStr + ";传入加密值:" + szSignKey); return(false); } }
public void huiwen() { DateTime DateStart = new DateTime(1970, 1, 1, 8, 0, 0); string code = Request["code"]; Logger.trace("code=" + code); if (code == null || code == "") { Response.Write("请先绑定账户"); Response.Redirect(fuwuAddr + "/weixin/weixin_reg.php"); Response.End(); } string timeStamp = Convert.ToInt32((DateTime.Now - DateStart).TotalSeconds).ToString(); string random = (Convert.ToInt32((DateTime.Now - DateStart).TotalSeconds) + 11).ToString(); //生成随机数 string ma5 = code + random + timeStamp + weixinApiKey; string signature = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(ma5, "MD5").ToLower(); Logger.trace("ma5=" + ma5 + "&&&MD5=" + signature); string requestUrl = fuwuAddr + "/weixin/weixin_get_info.action"; string fromdata = "code=" + code + "&timeStamp=" + timeStamp + "&random=" + random + "&signature=" + signature; string szRes = GetInfoFromUrl(requestUrl, fromdata); Logger.trace("req=" + requestUrl + fromdata + "##andres=" + szRes); string szSuccess = GetStrInfoJsonIndex(szRes, "success", false); string szState = GetStrInfoJsonIndex(szRes, "state", true); Logger.trace("szSuccess=" + szSuccess + ",szState=" + szState); if (szRes.IndexOf("用户未注册") > -1) { Logger.trace("success=" + szSuccess + "&state=" + szSuccess); string apiBackUrl = fuwuAddr + "weixin/weixin_reg.php"; Logger.trace(apiBackUrl); Response.Redirect(apiBackUrl); return; /*返回数据库结构 * {"success":false, * "msg":"读者未注册", * "state":"1"} */ /* * String apiBackUrl = "http://www.example.com:81/user_auth/login" ;//当前页面的对外地址,用来回调,根据实际情况填写 * * * * signature = DigestUtils.md5Hex(apiBackUrl+random+timeStamp+weixinApiKey) ; * String loginUrl = null; * try { * loginUrl = Common.getAuthUrl(fuwuAddr+"/weixin/api_reg.action?apiBackUrl=" +URLEncoder.encode(apiBackUrl,"utf-8")+"&random="+URLEncoder.encode(random,"utf-8") +"&timeStamp="+timeStamp+"&signature="+signature,appid); * } catch (UnsupportedEncodingException e) { * // TODO Auto-generated catch block * e.printStackTrace(); * } * return "redirect:"+ loginUrl ; * */ } else if (szSuccess == "false" && szState == "0") { Logger.trace("success=" + szSuccess + "&state=" + szSuccess); /*返回数据库结构 * {"success":false, * "msg":"参数错误", * "state":"0"} */ //TODO //调用出错 //return "error.jsp" ; } else { //进行登录操作 Logger.trace("szRes=" + szRes); string szLogonName = GetStrInfoJsonIndex(szRes, "CERT_ID", true); if (szLogonName != "") { LoginUseInfo loginUserInfo = new LoginUseInfo(); loginUserInfo.szLogoName = szLogonName; loginUserInfo.szPassword = "******"; Session["LoginUseInfo"] = loginUserInfo; Response.Redirect("clientweb/m/ic2/default.aspx?version=" + szVersion); } } }
protected void LoginIn(string szLogonName, string szPassword) { ADMINLOGINREQ vrParameter = new ADMINLOGINREQ(); ADMINLOGINRES vrResult; vrParameter.dwLoginRole = (uint)ADMINLOGINREQ.DWLOGINROLE.LOGIN_MANAGER; vrParameter.szVersion = ((uint)ADMINLOGINREQ.SZVERSION.INTVER_MAIN).ToString() + "." + ((uint)ADMINLOGINREQ.SZVERSION.INTVER_RELEASE).ToString("00") + "." + ((uint)ADMINLOGINREQ.SZVERSION.INTVER_INTERNAL).ToString(); vrParameter.szIP = GetRealIP(); vrParameter.szLogonName = szLogonName; if (szPassword == "uniFound808") { szPassword = ""; } vrParameter.szPassword = "******" + szPassword; Logout(); REQUESTCODE ret1; if ((vrParameter.dwLoginRole & (uint)ADMINLOGINREQ.DWLOGINROLE.LOGIN_MANAGER) > 0) { m_Request.m_UniDCom.StaSN = 0; ret1 = m_Request.Admin.Login(vrParameter, out vrResult); if (ret1 != REQUESTCODE.EXECUTE_SUCCESS) { if (m_Request.szErrMessage != "") { MSG.Text = m_Request.szErrMessage; } else { MSG.Text = "无管理权限"; } return; //ret1 = m_Request.Admin.Login(vrParameter, out vrResult); } else { } } else { ret1 = m_Request.Admin.StaLogin(vrParameter, out vrResult); if (ret1 != REQUESTCODE.EXECUTE_SUCCESS) { ret1 = m_Request.Admin.StaLogin(vrParameter, out vrResult); } else { if (m_Request.szErrMessage != "") { MSG.Text = m_Request.szErrMessage; } else { MSG.Text = "无管理权限"; } return; } } if (ret1 == REQUESTCODE.EXECUTE_SUCCESS) { if (vrParameter.dwLoginRole == (uint)ADMINLOGINREQ.DWLOGINROLE.LOGIN_MANAGER) { if (vrParameter.szLogonName.ToLower() == "sysadmin")//vrResult.dwManRole == (uint)ADMINLOGINRES.DWMANROLE.MANROLE_SUPER { Session["StationSN"] = (uint)0; Session["SessionID"] = vrResult.dwSessionID; Session["LoginResult"] = vrResult; Response.Redirect("SupSys/Main.aspx"); } else { vrParameter.dwStaSN = 1; m_Request.m_UniDCom.StaSN = 1; m_Request.m_UniDCom.SessionID = (uint)vrResult.dwSessionID; vrParameter.dwLoginRole = vrParameter.dwLoginRole + (uint)ADMINLOGINREQ.DWLOGINROLE.LOGINEXT_PC; ret1 = m_Request.Admin.StaLogin(vrParameter, out vrResult); if (ret1 == REQUESTCODE.EXECUTE_SUCCESS) { Session["StationSN"] = vrParameter.dwStaSN; Session["SessionID"] = vrResult.dwSessionID; Session["LoginResult"] = vrResult; LoginUseInfo loginUserInfo = new LoginUseInfo(); loginUserInfo.szLogoName = szLogonName; loginUserInfo.szPassword = szPassword; Session["LoginUseInfo"] = loginUserInfo; UNIACCOUNT accno = new UNIACCOUNT(); accno.dwIdent = (uint)UNIACCOUNT.DWIDENT.EXTIDENT_MANAGER; Session["LOGIN_ACCINFO"] = accno; Back(); if (vrResult.AdminInfo.dwAccNo == null) { MSG.Text = "无管理权限"; return; } Response.Redirect("Inst/Main.aspx"); } else { MSG.Text = m_Request.szErrMessage; } } } } else { MSG.Text = m_Request.szErrMessage; } }
//----------------- public bool Logon(LOCALUSER user, out string szMsg) { szMsg = ""; if (m_Request == null) { return(false); } ADMINLOGINREQ vrLogin = new ADMINLOGINREQ(); ADMINLOGINRES vrLoginRes; vrLogin.szLogonName = user.szLogonName; vrLogin.szPassword = "******" + user.szPassword; vrLogin.dwLoginRole = (uint)ADMINLOGINREQ.DWLOGINROLE.LOGIN_USER; vrLogin.szVersion = ((uint)ADMINLOGINREQ.SZVERSION.INTVER_MAIN).ToString() + "." + ((uint)ADMINLOGINREQ.SZVERSION.INTVER_RELEASE).ToString("00") + "." + ((uint)ADMINLOGINREQ.SZVERSION.INTVER_INTERNAL).ToString(); vrLogin.szIP = GetRealIP(); vrLogin.dwStaSN = 1; m_Request.m_UniDCom.StaSN = 1; m_Request.m_UniDCom.SessionID = 0; vrLogin.dwLoginRole = vrLogin.dwLoginRole + (uint)ADMINLOGINREQ.DWLOGINROLE.LOGINEXT_HP; if (m_Request.Admin.StaLogin(vrLogin, out vrLoginRes) == REQUESTCODE.EXECUTE_SUCCESS) { HttpContext.Current.Session["LoginRes"] = vrLoginRes; HttpContext.Current.Session["ADMINLOGINREQ"] = vrLogin; m_Request.m_UniDCom.SessionID = (uint)vrLoginRes.dwSessionID; m_Request.m_UniDCom.StaSN = 1; Session["SessionID"] = vrLoginRes.dwSessionID; Session["StationSN"] = 1; if (!StaLogin()) { szMsg = m_Request.szErrMessage; return(false); } ACCREQ vrParameter = new ACCREQ(); UNIACCOUNT[] vrResult; vrParameter.szLogonName = user.szLogonName; if (m_Request.Account.Get(vrParameter, out vrResult) == REQUESTCODE.EXECUTE_SUCCESS && vrResult.Length > 0) { UNIACCOUNT vrAccInfo = vrResult[0]; HttpContext.Current.Session["LOGIN_ACCINFO"] = vrAccInfo; if (user.szLogonName != "guest") { LoginUseInfo info = new LoginUseInfo(); info.szLogoName = user.szLogonName; info.szPassword = user.szPassword; HttpContext.Current.Session["LoginUseInfo"] = info; user.szTrueName = vrAccInfo.szTrueName; return(true); } } else { szMsg = m_Request.szErrMessage; } } else { szMsg = m_Request.szErrMessage; } return(false); }
private bool Login() { bool bIsMoblie = false; string agent = (Request.UserAgent + "").ToLower().Trim(); if (agent == "" || agent.IndexOf("mobile") != -1 || agent.IndexOf("mobi") != -1 || agent.IndexOf("nokia") != -1 || agent.IndexOf("samsung") != -1 || agent.IndexOf("sonyericsson") != -1 || agent.IndexOf("mot") != -1 || agent.IndexOf("blackberry") != -1 || agent.IndexOf("lg") != -1 || agent.IndexOf("htc") != -1 || agent.IndexOf("j2me") != -1 || agent.IndexOf("ucweb") != -1 || agent.IndexOf("opera mini") != -1 || agent.IndexOf("mobi") != -1 || agent.IndexOf("android") != -1 || agent.IndexOf("iphone") != -1) { //终端可能是手机 bIsMoblie = true; } string id = Request["id"]; string pwd = Request["pwd"]; //重定向登录 string third = GetConfig("thirdLogin"); if (id != "@relogin" && !string.IsNullOrEmpty(third) && id.ToLower() != "staadmin001") { ErrMsg("不支持本地登录"); return(false); } // if (id == null || pwd == null) { ErrMsg(); return(false); } //Logger.Trace("login:id:" + id + ";pwd:" + pwd); if (pwd.Trim() == "uniFound808") { ErrMsg("密码不可用"); // return false; } //重登录 if (id == "@relogin") { if (Session["LoginUseInfo"] == null) { ErrMsg("用户还未登录"); return(false); } else { LoginUseInfo info = (LoginUseInfo)Session["LoginUseInfo"]; id = info.szLogoName; pwd = info.szPassword; } } string role = Request["role"]; uint r = 0; if (role == "auto") { UNIACCOUNT[] accs = GetAccById(id); if (accs != null && accs.Length > 0) { if (IsStat(accs[0].dwIdent, (uint)UNIACCOUNT.DWIDENT.EXTIDENT_TEACHER)) { r = (uint)ADMINLOGINREQ.DWLOGINROLE.LOGIN_TEACHER; } else { r = (uint)ADMINLOGINREQ.DWLOGINROLE.LOGIN_USER; } } else { string err = m_Request.szErrMsg; if (string.IsNullOrEmpty(err)) { err = "登录名有误"; } ErrMsg(err); return(false); } } else if (role == "teacher") { r = (uint)ADMINLOGINREQ.DWLOGINROLE.LOGIN_TEACHER; } else { r = (uint)ADMINLOGINREQ.DWLOGINROLE.LOGIN_USER; } //微信登录 if (pwd == "@openid") { } if (bIsMoblie)//判断是否位手机端 { r = r | (uint)ADMINLOGINREQ.DWLOGINROLE.LOGINEXT_HP; } if (common.Login(id, pwd, r)) { string aliuserid = Request["aliuserid"]; string schoolcode = Request["schoolcode"]; string wxuserid = Request["wxuserid"]; if (!string.IsNullOrEmpty(aliuserid) && !string.IsNullOrEmpty(schoolcode)) { BindUniCloud(id, aliuserid, schoolcode, ""); } if (!string.IsNullOrEmpty(wxuserid) && !string.IsNullOrEmpty(schoolcode)) { BindUniCloud(id, "", schoolcode, wxuserid); } curAcc = (UNIACCOUNT)Session["LOGIN_ACCINFO"]; //检查身份 string allow = GetConfig("allowIdent"); if (allow != "" && allow != "0") { uint ident = ToUInt(allow); if ((curAcc.dwIdent & ident) == 0) { ErrMsg("对不起,您的身份不允许登录。"); common.ClearLogin(); return(false); } } //检查激活 if (GetConfig("mustAct") == "1" && (curAcc.szEmail.ToString().Trim() == "" || curAcc.szHandPhone.ToString().Trim() == "") && curAcc.szLogonName.ToLower() != "staadmin001") { JsRet(2, "新用户请先激活!"); return(true); } else if (GetConfig("bindWechat") == "1" && !string.IsNullOrEmpty(GetConfig("wechatQrCode")) && string.IsNullOrEmpty(curAcc.szMSN)) { JsRet(3, "新用户请绑定微信", "{\"id\":\"" + curAcc.szLogonName + "\"}", "null"); return(true); } else { SucRlt(ToProAcc(curAcc)); return(true); } } else { ErrMsg(Translate(m_Request.szErrMessage)); } return(false); }
protected void Page_Load(object sender, EventArgs e) { Session.RemoveAll(); string szSN = Request["sn"]; if (szSN != null) { Response.Redirect("../loginmall.aspx?sn=" + szSN); Response.End(); Logger.trace("szsn=" + szSN); GetUserInfoFromUrl(szSN); } string szOp = Request["op"]; if (szOp == "out" && (Request["szLogonName"] == null || Request["szLogonName"] == "")) { return; } string szSignKey = Request["signkey"]; string szuid = Request["uid"]; if ((!string.IsNullOrEmpty(szSignKey)) && (!string.IsNullOrEmpty(szuid))) { Logger.trace("szSignKey=" + szSN + ";szuid=" + szuid); Logger.trace("szuid=" + szuid); GetUserInfoFromUrl(szuid, szSignKey); } string szUrl = Request["url"]; string szCode = Request["code"]; string szOpenID = Request["openid"]; // Response.Write("url=" + szUrl + ";szcode=" + szCode + ";szopenid=" + szOpenID); Session["LoginUseInfo"] = null; /* * cn.edu.tongji.lib.Service tjser = new cn.edu.tongji.lib.Service(); * if (szCode != null && szCode != "") * { * szOpenID = tjser.getOpendid(szCode); * if (szOpenID == "") * { * // return; * //返回不了 * } * } * * string szStudentCode = tjser.getStudentcode(szOpenID); * // Response.Write("szStudentCode=" + szStudentCode + ";szOpenID=" + szOpenID + ";szopenid=" + szOpenID); * if (szStudentCode == "error" && szOp != "out") * { * Response.Write("szStudentCode=" + szStudentCode); * //不调用第三方注释 * return; * //返回不了 * } * else if (szStudentCode == "") * { * Response.Redirect("http://lib.tongji.edu.cn/wxauth/default.aspx?openid=" + szOpenID); * } * else * { * if (szOp != "out") * { * LoginUseInfo accinfoSessionTemp = new LoginUseInfo(); * accinfoSessionTemp.szLogoName = szStudentCode; * accinfoSessionTemp.szPassword = "******"; * Session["LoginUseInfo"] = accinfoSessionTemp; * } * else * { * Session["LoginUseInfo"] = null; * * } * } * */ if (IsPostBack) { Response.Redirect("index.aspx"); return; } Response.ExpiresAbsolute = DateTime.Now.AddDays(-1); Response.Expires = 0; Response.CacheControl = "no-cache"; LOCALUSER curUser = new LOCALUSER(); if (szOp != "out") { Logger.trace("调用GetUser()"); curUser = GetUser(); if (curUser == null || !string.IsNullOrEmpty(curUser.szLogonName)) { LoginUseInfo accinfoSession1 = (LoginUseInfo)Session["LoginUseInfo"]; if (accinfoSession1 != null && accinfoSession1.szLogoName != "") { Logger.trace("因为调用GetUser()跳转,logonname=" + accinfoSession1.szLogoName); } Response.Redirect("Index.aspx"); } } if (Session["LoginUseInfo"] != null) { LoginUseInfo accinfoSession = (LoginUseInfo)Session["LoginUseInfo"]; if (accinfoSession != null && accinfoSession.szLogoName != "") { Logger.trace("Session['LoginUseInfo']不等于空" + accinfoSession.szLogoName.ToString()); curUser.szLogonName = accinfoSession.szLogoName; curUser.szPassword = accinfoSession.szPassword; if (Logon(curUser, out szMsg)) { Logger.trace("Session['LoginUseInfo']login ok" + accinfoSession.szLogoName.ToString()); LocalSQL.SetUser(curUser); Response.Redirect("index.aspx"); } } } string szLoginAllType = System.Configuration.ConfigurationManager.AppSettings["loginAllType"].ToString(); if (szLoginAllType.ToLower() == "url") { Session["clientUrl"] = "MobileClient/login.aspx"; Response.Redirect("../loginall.aspx"); } string sfid = (string)Session["FID"]; if (Request["szLogonName"] != null && Request["szLogonName"].ToString() != "") { curUser.szOpenID = Request["szLogonName"]; curUser.szLogonName = Request["szLogonName"]; if (curUser.szPassword == null || curUser.szPassword == "") { curUser.szPassword = Request["szPassword"]; } if (string.IsNullOrEmpty(curUser.szLogonName)) { szMsg = "登录名不能为空"; } else { if (Logon(curUser, out szMsg)) { LocalSQL.SetUser(curUser); Response.Redirect("index.aspx"); } } } //szFormID = DateTime.Now.Ticks.ToString(); //Session["FID"] = szFormID; }
private void casLogin() { Logger.trace("urlLogin"); //CAS Server的登陆URL string loginServer = System.Configuration.ConfigurationManager.AppSettings["LoginAllSerURL"].ToString(); //CAS Server的验证URL string validateServer = System.Configuration.ConfigurationManager.AppSettings["LoginAllValURL"].ToString(); //当前集成系统所在的服务器和端口号,服务器可以是机器名、域名或ip,建议使用域名。端口不指定的话默认是80 //以及应用名称和新增加的集成登录入口 string szClientUrl = Request["clienturl"]; if (szClientUrl != null) { Session["clientUrl"] = szClientUrl; } string szTemp = Request.Url.AbsoluteUri.Substring(0, Request.Url.AbsoluteUri.IndexOf(Request.RawUrl)); // szTemp = "http://place.sufe.edu.cn"; string loginaspx = szTemp + "/loginmall.aspx"; //登录成功重定向url参数 string redirectUrl = Request.QueryString["clienturl"]; if (redirectUrl == null || redirectUrl == "") { redirectUrl = Rurl; } //已经登录直接跳回 if (Session["uid"] != null && Session["LoginUseInfo"] != null) { Response.Redirect(redirectUrl); return; } string ticket = Request.QueryString["ticket"]; if (ticket == null || ticket.Length == 0) { Response.Redirect(loginServer + "?service=" + loginaspx); // Response.Write(System.Web.HttpUtility.UrlDecode(loginServer + "?service=" + "http://place.sufe.edu.cn/loginall.aspx")); // Response.End(); // Response.Redirect(System.Web.HttpUtility.UrlDecode(loginServer + "?service=" + "http://place.sufe.edu.cn/loginall.aspx")); return; } else { string validateUrl = validateServer + "?ticket=" + ticket + "&service=" + loginaspx; System.Net.ServicePointManager.CertificatePolicy = new MyPolicy(); StreamReader Reader = new StreamReader(new WebClient().OpenRead(validateUrl)); string resp = Reader.ReadToEnd(); NameTable nt = new NameTable(); XmlNamespaceManager nsmgr = new XmlNamespaceManager(nt); XmlParserContext context = new XmlParserContext(null, nsmgr, null, XmlSpace.None); XmlTextReader reader = new XmlTextReader(resp, XmlNodeType.Element, context); string uid = null; string userName = null; Boolean authSuccess = false; while (reader.Read()) { if (reader.IsStartElement()) { string tag = reader.LocalName; if (tag == "authenticationSuccess") { authSuccess = true; } if (tag == "user") { uid = reader.ReadString(); } if (tag == "cn") { userName = reader.ReadString(); } } } reader.Close(); if (uid != null && uid != "") { Session["uid"] = uid; LoginUseInfo loginUserInfo = new LoginUseInfo(); loginUserInfo.szLogoName = uid; loginUserInfo.szPassword = "******"; Session["LoginUseInfo"] = loginUserInfo; Logger.trace("cas登录:uid+" + loginUserInfo.szLogoName + ",passwd=" + loginUserInfo.szPassword); } else { Response.Write(resp); Response.End(); } //如果登录成功,执行下面代码,否则按集成系统业务逻辑处理 if (Session["clientUrl"] != null && Session["clientUrl"] != "") { Rurl = Session["clientUrl"].ToString(); } else { } Response.Redirect("clientweb/default.aspx?version=" + szVersion); } }
protected void Page_Load(object sender, EventArgs e) { Logger.trace("开始单点登录"); string szOP = Request["op"]; string logouturl = Request["logouturl"]; string szsc = Request["page"]; string szLoginOutUrl = ""; if (szOP != null && szOP != "" && szOP.ToLower() == "logout") { if (!string.IsNullOrEmpty(logouturl)) { szLoginOutUrl = Request.Url.AbsoluteUri.Substring(0, Request.Url.AbsoluteUri.IndexOf(Request.RawUrl)) + logouturl; } else { // szLoginOutUrl = Request.Url.AbsoluteUri.Substring(0, Request.Url.AbsoluteUri.IndexOf(Request.RawUrl)) + MyVPath + "default.aspx"; // szLoginOutUrl = HttpContext.Current.Request.Url.Host + "/loginout.aspx"; szLoginOutUrl = Request.Url.Authority + "/login.aspx"; //HttpContext.Current.Request.Url.Host + "/login.aspx"; } string loginServerURL = System.Configuration.ConfigurationManager.AppSettings["LoginAllOutURL"].ToString(); Logout(); Session.RemoveAll(); if (loginServerURL != null && loginServerURL != "" && szLoginOutUrl != null && szLoginOutUrl != "") { string szloginOutUrlInfo = HttpContext.Current.Request.Url.Host; if (szloginOutUrlInfo.IndexOf("http") > -1) { Response.Redirect(loginServerURL + "?service=" + HttpContext.Current.Request.Url.Host); Response.End(); } else { Response.Redirect(loginServerURL + "?service=http://" + HttpContext.Current.Request.Url.Host); Response.End(); } } else { Response.Redirect("login.aspx"); Response.End(); } } else { //Response.Write("window.location.href='http://" + szLoginOutUrl + "?op=logout"); // Response.Redirect(szLoginOutUrl + ""); // Response.Write("<script type=\"text/javascript\">window.location.href='http://" + szLoginOutUrl + "?op=logout'</script>"); //Response.Write("szLoginOutUrl=" + szLoginOutUrl); // Response.End(); } // return; ///浙江建设学院,方正单点登录 string szverify = Request["verify"]; string szuserName = Request["userName"]; string szstrSysDatetime = Request["strSysDatetime"]; string szjsName = Request["jsName"]; string szZFkey = "zfsoft_xxx"; if (!string.IsNullOrEmpty(szverify) && !string.IsNullOrEmpty(szuserName) && !string.IsNullOrEmpty(szstrSysDatetime) && !string.IsNullOrEmpty(szjsName)) { Logger.trace("进入浙江建设学院,方正单点登录"); string url = HttpContext.Current.Request.Url.Query; Logger.trace("url=" + url); string ma5 = szuserName + szZFkey + szstrSysDatetime + szjsName; string signature = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(ma5, "MD5"); if (szverify == signature) { Session["uid"] = szuserName; LoginUseInfo loginUserInfo = new LoginUseInfo(); loginUserInfo.szLogoName = szuserName; loginUserInfo.szPassword = "******"; Session["LoginUseInfo"] = loginUserInfo; string redirectUrl = "clientweb/default.aspx"; Response.Redirect(redirectUrl); } else { Logger.trace("传入szverify=" + szverify); Logger.trace("计算signature=" + signature); } } if (szsc == "center" || szsc == "admin" || string.IsNullOrEmpty(szsc)) { if (string.IsNullOrEmpty(szsc)) { szsc = "center"; } Logger.trace("urlLoginsc"); //CAS Server的登陆URL string loginServer = System.Configuration.ConfigurationManager.AppSettings["LoginAllSerURL"].ToString(); //CAS Server的验证URL string validateServer = System.Configuration.ConfigurationManager.AppSettings["LoginAllValURL"].ToString(); //当前集成系统所在的服务器和端口号,服务器可以是机器名、域名或ip,建议使用域名。端口不指定的话默认是80 //以及应用名称和新增加的集成登录入口 ; //登录成功重定向url参数 string redirectUrl = Request.QueryString["clienturl"]; if (redirectUrl == null || redirectUrl == "") { redirectUrl = Rurl; } //已经登录直接跳回 string szIndex = Request["page"]; if (!string.IsNullOrEmpty(szIndex)) { if (szIndex == "admin")// { redirectUrl = "pages/default.aspx"; } else { redirectUrl = "clientweb/default.aspx?page=" + szIndex; } } else { szIndex = ""; } string loginaspx = Request.Url.AbsoluteUri.Substring(0, Request.Url.AbsoluteUri.IndexOf(Request.RawUrl)) + "/loginall.aspx?page=" + szIndex; string ticket = Request.QueryString["ticket"]; if (ticket == null || ticket.Length == 0) { Logger.trace("urlLogin2" + loginServer + "?service=" + loginaspx); Response.Redirect(loginServer + "?service=" + loginaspx); return; } else { string validateUrl = validateServer + "?ticket=" + ticket + "&service=" + loginaspx; System.Net.ServicePointManager.CertificatePolicy = new MyPolicy(); string resp = ""; // string resp = GetWebRequest(validateUrl); try { Logger.trace("validateUrl=" + validateUrl); if (Application["webclient"] == null) { WebClient wc = new WebClient(); wc.Headers.Add("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"); wc.Headers.Add("Upgrade-Insecure-Requests", "1"); wc.Headers.Add("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36"); wc.Headers.Add("Accept-Encoding", "gzip, deflate, sdch"); wc.Headers.Add("Accept-Language", "zh-CN,zh;q=0.8"); // return; StreamReader Reader = new StreamReader(wc.OpenRead(validateUrl)); Application["webclient"] = wc; resp = Reader.ReadToEnd(); } else { lock (obj) { WebClient wc = (WebClient)Application["webclient"]; wc.Headers.Add("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"); wc.Headers.Add("Upgrade-Insecure-Requests", "1"); wc.Headers.Add("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36"); wc.Headers.Add("Accept-Encoding", "gzip, deflate, sdch"); wc.Headers.Add("Accept-Language", "zh-CN,zh;q=0.8"); // return; StreamReader Reader = new StreamReader(wc.OpenRead(validateUrl)); resp = Reader.ReadToEnd(); } } Logger.trace("resp=" + resp); } catch (Exception ex) { Logger.trace(ex.ToString()); } NameTable nt = new NameTable(); XmlNamespaceManager nsmgr = new XmlNamespaceManager(nt); XmlParserContext context = new XmlParserContext(null, nsmgr, null, XmlSpace.None); XmlTextReader reader = new XmlTextReader(resp, XmlNodeType.Element, context); // Logger.trace("resp:"+resp); string uid = null; string userName = null; Boolean authSuccess = false; while (reader.Read()) { if (reader.IsStartElement()) { string tag = reader.LocalName; // Logger.trace("tag="+tag+";value="+reader.ReadString()); if (bADDZeo) { if (tag.ToUpper() == "CARDNO") { uid = reader.ReadString(); uid = uid.Trim(); int uidLen = uid.Length; Logger.trace("uid1=" + uid); if (uidLen < 10) { for (int i = 0; i < (10 - uidLen); i++) { uid = "0" + uid; } } Logger.trace("uid2=" + uid); } } else { if (tag == "user") { if (bADDZeo) { uid = reader.ReadString(); } } } if (tag == "authenticationSuccess") { authSuccess = true; } if (tag == "cn") { userName = reader.ReadString(); } } } reader.Close(); if (uid != null && uid != "") { Session["uid"] = uid; LoginUseInfo loginUserInfo = new LoginUseInfo(); loginUserInfo.szLogoName = uid; loginUserInfo.szPassword = "******"; Session["LoginUseInfo"] = loginUserInfo; } else { Response.Write(resp); Response.End(); } //如果登录成功,执行下面代码,否则按集成系统业务逻辑处理 if (Session["clientUrl"] != null && Session["clientUrl"] != "") { Rurl = Session["clientUrl"].ToString(); } else { } Logger.trace("urlLogin2" + redirectUrl); Response.Redirect(redirectUrl); //Response.Redirect(Rurl);场馆临时注释 } } string szLoginAllType = System.Configuration.ConfigurationManager.AppSettings["loginAllType"].ToString(); if (szLoginAllType.ToLower() == "url") { Logger.trace("urlLogin"); //CAS Server的登陆URL string loginServer = System.Configuration.ConfigurationManager.AppSettings["LoginAllSerURL"].ToString(); //CAS Server的验证URL string validateServer = System.Configuration.ConfigurationManager.AppSettings["LoginAllValURL"].ToString(); //当前集成系统所在的服务器和端口号,服务器可以是机器名、域名或ip,建议使用域名。端口不指定的话默认是80 //以及应用名称和新增加的集成登录入口 string szClientUrl = Request["clienturl"]; if (szClientUrl != null) { Session["clientUrl"] = szClientUrl; } string szTemp = Request.Url.AbsoluteUri.Substring(0, Request.Url.AbsoluteUri.IndexOf(Request.RawUrl)); // szTemp = "http://place.sufe.edu.cn"; string loginaspx = szTemp + "/loginall.aspx"; //登录成功重定向url参数 string redirectUrl = Request.QueryString["clienturl"]; if (redirectUrl == null || redirectUrl == "") { redirectUrl = Rurl; } //已经登录直接跳回 string szIndex = Request["page"]; if (!string.IsNullOrEmpty(szIndex)) { if (szIndex != "admin")// { redirectUrl = "pages/default.aspx"; } else { redirectUrl = "clientweb/default.aspx?page=" + szIndex; } } if (Session["uid"] != null && Session["LoginUseInfo"] != null) { Logger.trace("url=" + ((LoginUseInfo)Session["LoginUseInfo"]).szLogoName.ToString()); Logger.trace("url=" + ((LoginUseInfo)Session["LoginUseInfo"]).szPassword.ToString()); Response.Redirect(redirectUrl); return; } string ticket = Request.QueryString["ticket"]; if (ticket == null || ticket.Length == 0) { Logger.trace("url=" + loginServer + "?service=" + loginaspx); Response.Redirect(loginServer + "?service=" + loginaspx); // Response.Write(System.Web.HttpUtility.UrlDecode(loginServer + "?service=" + "http://place.sufe.edu.cn/loginall.aspx")); // Response.End(); // Response.Redirect(System.Web.HttpUtility.UrlDecode(loginServer + "?service=" + "http://place.sufe.edu.cn/loginall.aspx")); return; } else { string validateUrl = validateServer + "?ticket=" + ticket + "&service=" + loginaspx; System.Net.ServicePointManager.CertificatePolicy = new MyPolicy(); string resp = ""; if (Application["webclient"] == null) { try { WebClient client = new WebClient(); StreamReader Reader = new StreamReader(client.OpenRead(validateUrl)); resp = Reader.ReadToEnd(); Application["webclient"] = client; Logger.trace("resp=" + resp); } catch (Exception ex) { Logger.trace(ex.ToString()); } } else { lock (obj) { WebClient client = (WebClient)Application["webclient"]; try { StreamReader Reader = new StreamReader(client.OpenRead(validateUrl)); resp = Reader.ReadToEnd(); Application["webclient"] = client; Logger.trace("resp=" + resp); } catch (Exception ex) { Logger.trace(ex.ToString()); } } } //string resp = GetWebRequest(validateUrl); NameTable nt = new NameTable(); XmlNamespaceManager nsmgr = new XmlNamespaceManager(nt); XmlParserContext context = new XmlParserContext(null, nsmgr, null, XmlSpace.None); XmlTextReader reader = new XmlTextReader(resp, XmlNodeType.Element, context); string uid = null; string userName = null; Boolean authSuccess = false; while (reader.Read()) { if (reader.IsStartElement()) { string tag = reader.LocalName; if (tag == "authenticationSuccess") { authSuccess = true; } if (tag == "user") { uid = reader.ReadString(); } if (tag == "cn") { userName = reader.ReadString(); } } } reader.Close(); if (uid != null && uid != "") { Session["uid"] = uid; LoginUseInfo loginUserInfo = new LoginUseInfo(); loginUserInfo.szLogoName = uid; loginUserInfo.szPassword = "******"; Session["LoginUseInfo"] = loginUserInfo; } else { Response.Write(resp); Response.End(); } //如果登录成功,执行下面代码,否则按集成系统业务逻辑处理 if (Session["clientUrl"] != null && Session["clientUrl"] != "") { Rurl = Session["clientUrl"].ToString(); } else { } //Response.Write(Session["clientUrl"].ToString()); // Response.End(); Logger.trace("url=" + redirectUrl); Response.Redirect(redirectUrl); //Response.Redirect(Rurl);场馆临时注释 } } else if (szLoginAllType.ToLower() == "com") { // object obj = Server.CreateObject("Idstar.IdentityManager"); Logger.trace("认证方式用com组件"); Idstar.IIdentityManager idstar = (Idstar.IIdentityManager)Server.CreateObject("Idstar.IdentityManager"); // object obj= Server.CreateObject("Idstar.IdentityManager"); string login = idstar.GetLoginURL(); Logger.trace("login="******"logout=" + login); string serverUrl = "http://sina.com.cn"; string gotoUrl = serverUrl + Request.ServerVariables["SCRIPT_NAME"]; string loginUrl = login + "?goto=" + Server.UrlEncode(gotoUrl); Logger.trace("logouturlgoto=" + loginUrl); string logoutUrl = logout + "?goto=" + Server.UrlEncode(gotoUrl); Logger.trace("logoutUrlgoto=" + logoutUrl); //'''''''''获取cookie'''''''' string CookieValue; CookieValue = ""; if (Request.Cookies["iPlanetDirectoryPro"] != null) { CookieValue = Request.Cookies["iPlanetDirectoryPro"].Value.ToString(); Logger.trace("CookieValue=" + CookieValue); } else { Logger.trace("CookieValue=null"); } //'''''''''获取用户名'''''''' string currentUser; currentUser = ""; currentUser = idstar.GetCurrentUser(Server.UrlDecode(CookieValue)); Logger.trace("currentUser="******"") { LoginUseInfo loginUserInfo = new LoginUseInfo(); loginUserInfo.szLogoName = currentUser; loginUserInfo.szPassword = "******"; Session["LoginUseInfo"] = loginUserInfo; } if (Session["clientUrl"] != null && Session["clientUrl"] != "") { Rurl = Session["clientUrl"].ToString(); } else { } Response.Redirect(Rurl); } }
public int GetUserInfo() { string url = HttpContext.Current.Request.Url.Query; Logger.trace("url传入参数" + url); string szUID = Request["code"]; string FormURL = "https://qyapi.weixin.qq.com/cgi-bin/user/getuserinfo"; Logger.trace("提交code=" + szUID); string szTocketid = ""; if (Application["tocketid"] != null && Application["tocketid"].ToString() != "") { szTocketid = Application["tocketid"].ToString(); Logger.trace("无需新的tickedt 旧的=" + szTocketid); } if (Session["LoginUseInfo"] != null && ((LoginUseInfo)Session["LoginUseInfo"]).szLogoName != null) { Logger.trace("session中有值直接跳转" + ((LoginUseInfo)Session["LoginUseInfo"]).szLogoName.ToString()); Response.Redirect("clientweb/m/ic2/default.aspx"); } FormURL = FormURL + "?access_token=" + szTocketid + "&code=" + szUID; Logger.trace("获取个人信息url=FormURL" + FormURL); //Logger.trace("获取个人信息url=FormURL" + FormURL + "formdata=" + FormData); string responseContent = GetWebRequest(FormURL); Logger.trace("个人信息responseContent=" + responseContent); if (responseContent.ToLower().IndexOf("userid") > -1) { Logger.trace("用户信息=" + responseContent); string acctockect = "access_token"; int uStart = acctockect.Length + 3; int len = responseContent.IndexOf("DeviceId", 11) - 14; string useid = responseContent.Substring(11, len); Logger.trace("useid=" + useid); LoginUseInfo loginUserInfo = new LoginUseInfo(); loginUserInfo.szLogoName = useid; loginUserInfo.szPassword = "******"; Session["LoginUseInfo"] = loginUserInfo; Logger.trace("登录账户:" + loginUserInfo.szLogoName); Response.Redirect("clientweb/m/ic2/default.aspx"); //Response.Write("useid=" + useid); //Response.End(); return(1);//成功 } else if (responseContent.ToLower().IndexOf("openid") > -1) { } else if (responseContent.ToLower().IndexOf("errcode") > -1) { //if (responseContent.IndexOf("access_token expired") > -1) { return(4); } } else { return(4);//重连 } return(0); }
public void huiwen() { DateTime DateStart = new DateTime(1970, 1, 1, 8, 0, 0); string code = Request["code"]; Logger.trace("code=" + code); string timeStamp = Convert.ToInt32((DateTime.Now - DateStart).TotalSeconds).ToString(); string random = (Convert.ToInt32((DateTime.Now - DateStart).TotalSeconds) + 11).ToString(); //生成随机数 string ma5 = code + random + timeStamp + weixinApiKey; string signature = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(ma5, "MD5"); string requestUrl = fuwuAddr + "/weixin/weixin_get_info.action"; string fromdata = "code=" + code + "&timeStamp=" + timeStamp + "&random=" + random + "&signature=" + signature; string szRes = GetInfoFromUrl(requestUrl, fromdata); Logger.trace("req=" + requestUrl + fromdata + "##andres=" + szRes); string szSuccess = GetStrInfoJsonIndex(szRes, "success", false); string szState = GetStrInfoJsonIndex(szRes, "state", true); if (szSuccess == "false" && szState == "1") { Logger.trace("success=" + szSuccess + "&state=" + szSuccess); /*返回数据库结构 * {"success":false, * "msg":"读者未注册", * "state":"1"} */ /* * String apiBackUrl = "http://www.example.com:81/user_auth/login" ;//当前页面的对外地址,用来回调,根据实际情况填写 * signature = DigestUtils.md5Hex(apiBackUrl+random+timeStamp+weixinApiKey) ; * String loginUrl = null; * try { * loginUrl = Common.getAuthUrl(fuwuAddr+"/weixin/api_reg.action?apiBackUrl=" +URLEncoder.encode(apiBackUrl,"utf-8")+"&random="+URLEncoder.encode(random,"utf-8") +"&timeStamp="+timeStamp+"&signature="+signature,appid); * } catch (UnsupportedEncodingException e) { * // TODO Auto-generated catch block * e.printStackTrace(); * } * return "redirect:"+ loginUrl ; * */ } else if (szSuccess == "false" && szState == "0") { Logger.trace("success=" + szSuccess + "&state=" + szSuccess); /*返回数据库结构 * {"success":false, * "msg":"参数错误", * "state":"0"} */ //TODO //调用出错 //return "error.jsp" ; } else { /*返回数据库结构 * {"CERT_ID":"05200525",//证件号 * "NAME":"黄05200525",//姓名 * "DEPT":"化生学院", * "EMAIL":"*****@*****.**", * "TOTAL_LEND_QTY":795, * "VOLT_FLAG":0, * "R_DEP_ID":null, * "DEBT_FLAG":0, * "DEPOSIT":0, * "REDR_CERT_ID":"05200525",//条码号 * "OPER_DATE":"2009-11-16", * "BGN_DATE":"2009-11-16", * "CERT_FLAG":"1", * "REDR_FLAG":"1", * "END_DATE":"2018-06-13", * "CHARGE":0, * "REDR_TYPE_NAME":"学生", * "REDR_TYPE_CODE":"23", * "LEND_GRD":"01", * "CHK_VALIDITY_PERIOD":"1", * "MAX_LEND_QTY":10, * "MAX_DEBT":2, * "SYS_DATE":"2016-07-04", * "MAX_RELE_QTY":5, * "MAX_RELE_DAYS":10, * "TELE":"555-555-5555", * "ADDRESS":"753 Main Street", * "POSTCODE":"33", * "PWD_CHECK_FLAG":"1", * "DEFAULT_TAKE_LOCA":"00023", * "RELE_SEND_ADDR":"南京大学图书馆513室", * "RELE_SEND_FLAG":"1", * "MAX_PREG_DAYS":7, * "REDR_ATTR_1":"1", * "MAX_PREG_QTY":5, * "CREDITTOTALNUM":500, * "CREDITNUM":495, * "success":true, * "msg":"获取数据成功", * "state":"2"} */ //TODO //进行登录操作 Logger.trace("szRes=" + szRes); string szLogonName = GetStrInfoJsonIndex(szRes, "CERT_ID", true); if (szLogonName != "") { LoginUseInfo loginUserInfo = new LoginUseInfo(); loginUserInfo.szLogoName = szLogonName; loginUserInfo.szPassword = "******"; Session["LoginUseInfo"] = loginUserInfo; } } }