private static bool RetriveSessionFromCookie() { var cookies = WebGlobalVariable.Request.Cookies; HttpCookie cookie = cookies[RightConst.USER_INFO_COOKIE_NAME]; if (cookie == null) { return(false); } CookieUserInfo userInfo = CookieUserInfo.FromEncodeString(cookie.Value); if (userInfo == null) { return(false); } EmptyDbDataSource source = new EmptyDbDataSource(); using (source) using (UserResolver resolver = new UserResolver(source)) { try { IUserInfo info = resolver.CheckUserLogOnById(userInfo.UserId, userInfo.Password); WebGlobalVariable.SessionGbl.AppRight.Initialize(info); return(true); } catch { return(false); } } }
public OutputData Update(IInputData input, object instance) { BasePasswordData passwd = instance.Convert <BasePasswordData>(); using (EmptyDbDataSource source = new EmptyDbDataSource()) using (UserResolver resolver = new UserResolver(source)) { return(ChangePasswd(resolver, passwd)); } }
public OutputData Insert(IInputData input, object instance) { LogOnData data = instance.Convert <LogOnData>(); using (UserResolver resolver = new UserResolver(this)) { IUserInfo userInfo = resolver.CheckUserLogOn(data.LogOnName, data.Password, 0); if (userInfo == null) { } var response = WebGlobalVariable.Response; CookieOptions options = new CookieOptions { Expires = new DateTimeOffset(DateTime.Now.AddDays(30)) }; response.Cookies.Append(COOKIE_NAME, data.LogOnName, options); options = new CookieOptions { Expires = new DateTimeOffset(JWTUtil.CalcValidTime()) }; string token = JWTUtil.CreateEncodingInfo(userInfo); response.Cookies.Append(JWTUtil.COOKIE_NAME, token, options); //CookieUserInfo cookieInfo = new CookieUserInfo(data, userInfo); //cookie = new HttpCookie(RightConst.USER_INFO_COOKIE_NAME, cookieInfo.Encode()) //{ // Expires = GetExpireDate() //}; //response.Cookies.Set(cookie); WebSuccessResult result; string retUrl = input.QueryString["RetURL"]; if (!string.IsNullOrEmpty(retUrl)) { result = new WebSuccessResult(retUrl); } else { WebAppSetting appSetting = WebAppSetting.WebCurrent; if (string.IsNullOrEmpty(appSetting.MainPath)) { result = new WebSuccessResult(appSetting.HomePath); } else { string url = HttpUtility.UrlEncode(appSetting.HomePath); string mainUrl = UriUtil.AppendQueryString(appSetting.MainPath, "StartUrl=" + url); result = new WebSuccessResult(mainUrl); } } return(OutputData.CreateToolkitObject(result)); } }
public OutputData Insert(IInputData input, object instance) { LogOnData data = instance.Convert <LogOnData>(); using (UserResolver resolver = new UserResolver(this)) { IUserInfo userInfo = resolver.CheckUserLogOn(data.LogOnName, data.Password, 0); if (userInfo == null) { } WebGlobalVariable.SessionGbl.AppRight.Initialize(userInfo); var response = WebGlobalVariable.Response; HttpCookie cookie = new HttpCookie(COOKIE_NAME, data.LogOnName) { Expires = DateTime.Now.AddDays(30) }; response.Cookies.Set(cookie); CookieUserInfo cookieInfo = new CookieUserInfo(data, userInfo); cookie = new HttpCookie(RightConst.USER_INFO_COOKIE_NAME, cookieInfo.Encode()) { Expires = GetExpireDate() }; response.Cookies.Set(cookie); WebSuccessResult result; var request = WebGlobalVariable.Request; string retUrl = request.QueryString["RetURL"]; if (!string.IsNullOrEmpty(retUrl)) { result = new WebSuccessResult(retUrl); } else { WebAppSetting appSetting = WebAppSetting.WebCurrent; if (string.IsNullOrEmpty(appSetting.MainPath)) { result = new WebSuccessResult(appSetting.HomePath); } else { string url = HttpUtility.UrlEncode(appSetting.HomePath); string mainUrl = UriUtil.AppendQueryString(appSetting.MainPath, "StartUrl=" + url); result = new WebSuccessResult(mainUrl); } } return(OutputData.CreateToolkitObject(result)); } }
protected override OutputData ChangePasswd(UserResolver resolver, BasePasswordData passwd) { PasswordData password = passwd.Convert <PasswordData>(); bool success = resolver.ChangePassword(passwd.UserId, passwd.GetNewPassword("PasswordData"), password.OldPassword); if (success) { return(OutputData.CreateToolkitObject(resolver.CreateKeyData())); } else { const string errorMsg = "原密码不匹配"; FieldErrorInfo field = new FieldErrorInfo("PasswordData", "OldPassword", errorMsg); throw new WebPostException(errorMsg, field); } }
protected override OutputData ChangePasswd(UserResolver resolver, BasePasswordData passwd) { resolver.ChangePassword(passwd.UserId, passwd.GetNewPassword("PasswordData"), null); return(OutputData.CreateToolkitObject(resolver.CreateKeyData())); }
protected abstract OutputData ChangePasswd(UserResolver resolver, BasePasswordData passwd);