示例#1
0
        private void UserLogined(iPow.Service.SSO.Entity.User user)
        {
            #region user first login

            var tempOnlineUser = iPow.Service.SSO.WebService.OnLineUserService
                                 .OnLineUserList.Where(e => e.username == user.username && e.id == user.id)
                                 .FirstOrDefault();

            if (tempOnlineUser == null)
            {
                var onlineUser = new iPow.Service.SSO.Entity.OnlineUser()
                {
                    Activity       = user.Activity,
                    DepartmentID   = user.DepartmentID,
                    Email          = user.Email,
                    EmployeeID     = user.EmployeeID,
                    id             = user.id,
                    lastloginip    = user.lastloginip,
                    lastlogintime  = user.lastlogintime,
                    LoginDomain    = user.LoginDomain,
                    LoginIpAddress = user.LoginIpAddress,
                    LoginTime      = System.DateTime.Now,
                    logintimes     = user.logintimes,
                    password       = user.password,
                    Phone          = user.Phone,
                    roleid         = user.roleid,
                    sex            = user.sex,
                    style          = user.style,
                    truename       = user.truename,
                    UserGuid       = user.UserGuid,
                    userid         = user.userid,
                    username       = user.username,
                    UserType       = user.UserType
                };
                iPow.Service.SSO.WebService.OnLineUserService.OnLineUserList.Add(onlineUser);
            }
            #endregion
        }
示例#2
0
        protected RedirectResult UserLoginedAndRedirect(iPow.Service.SSO.Entity.User user)
        {
            #region user first login

            var tempOnlineUser = iPow.Service.SSO.WebService.OnLineUserService
                 .OnLineUserList.Where(e => e.username == user.username && e.id == user.id)
                 .FirstOrDefault();

            if (tempOnlineUser == null)
            {
                var onlineUser = new iPow.Service.SSO.Entity.OnlineUser()
                {
                    Activity = user.Activity,
                    DepartmentID = user.DepartmentID,
                    Email = user.Email,
                    EmployeeID = user.EmployeeID,
                    id = user.id,
                    lastloginip = user.lastloginip,
                    lastlogintime = user.lastlogintime,
                    LoginDomain = user.LoginDomain,
                    LoginIpAddress = user.LoginIpAddress,
                    LoginTime = System.DateTime.Now,
                    logintimes = user.logintimes,
                    password = user.password,
                    Phone = user.Phone,
                    roleid = user.roleid,
                    sex = user.sex,
                    style = user.style,
                    truename = user.truename,
                    UserGuid = user.UserGuid,
                    userid = user.userid,
                    username = user.username,
                    UserType = user.UserType
                };
                iPow.Service.SSO.WebService.OnLineUserService.OnLineUserList.Add(onlineUser);
            }
            #endregion

            //add session 这里的session用法,要和子站点统一,管理好时间
            iPow.Infrastructure.Crosscutting.Function.SessionHelper.Add(
                iPow.Infrastructure.Crosscutting.Comm.Service.ConstService.SessionNameCurrentUser,
               user, iPow.Infrastructure.Crosscutting.Comm.Service.ConstService.SessionExpires);
            //添加 Cookie 一边以其它业务网站能够访问
            iPow.Infrastructure.Crosscutting.Comm.Service.SsoService.SendSsoUserLoginedCookie();
            //添加日志记录

            #region buileder secutity token

            iPow.Service.SSO.Entity.SecurityToken securityToken = new Entity.SecurityToken()
            {
                CreateTime = System.DateTime.Now,
                TokenId = iPow.Infrastructure.Crosscutting.Comm.Service.SsoService.BuilderTokenId(),
                IsValid = false,
                User = user
            };
            iPow.Service.SSO.WebService.SecurityTokenService.SecurityTokenList.Add(securityToken);

            #endregion
            //返回
            var url = this.GetReturnUrl(securityToken.TokenId);
            return Redirect(url);
        }
示例#3
0
        /// <summary>
        /// 用户已登录
        /// </summary>
        /// <param name="user">The user.</param>
        /// <param name="returnUrl">The return URL.</param>
        /// <returns></returns>
        private RedirectResult UserLogined(iPow.Service.SSO.Entity.User user, string returnUrl)
        {
            #region user first login

            var tempOnlineUser = iPow.Service.SSO.WebService.OnLineUserService
                .OnLineUserList.Where(e => e.username == user.username && e.id == user.id)
                .FirstOrDefault();

            if (tempOnlineUser == null)
            {
                var onlineUser = new iPow.Service.SSO.Entity.OnlineUser()
                {
                    Activity = user.Activity,
                    DepartmentID = user.DepartmentID,
                    Email = user.Email,
                    EmployeeID = user.EmployeeID,
                    id = user.id,
                    lastloginip = user.lastloginip,
                    lastlogintime = user.lastlogintime,
                    LoginDomain = user.LoginDomain,
                    LoginIpAddress = user.LoginIpAddress,
                    LoginTime = System.DateTime.Now,
                    logintimes = user.logintimes,
                    password = user.password,
                    Phone = user.Phone,
                    roleid = user.roleid,
                    sex = user.sex,
                    style = user.style,
                    truename = user.truename,
                    UserGuid = user.UserGuid,
                    userid = user.userid,
                    username = user.username,
                    UserType = user.UserType
                };
                iPow.Service.SSO.WebService.OnLineUserService.OnLineUserList.Add(onlineUser);
            }

            #endregion

            #region buileder secutity token

            iPow.Service.SSO.Entity.SecurityToken securityToken = new Entity.SecurityToken()
            {
                CreateTime = System.DateTime.Now,
                TokenId = iPow.Infrastructure.Crosscutting.Comm.Service.SsoService.BuilderTokenId(),
                IsValid = false,
                User = user
            };
            iPow.Service.SSO.WebService.SecurityTokenService.SecurityTokenList.Add(securityToken);

            #endregion

            //add session 这里的session用法,要和子站点统一,管理好时间
            iPow.Infrastructure.Crosscutting.Function.SessionHelper.Add(
                iPow.Infrastructure.Crosscutting.Comm.Service.ConstService.SessionNameCurrentUser,
                user, iPow.Infrastructure.Crosscutting.Comm.Service.ConstService.SessionExpires);

            if (string.IsNullOrWhiteSpace(returnUrl))
            {
                return Redirect("/");
            }
            string splitStr = returnUrl.Contains("?") ? "&" : "?";
            string returnFormat = "{0}{1}" + iPow.Infrastructure.Crosscutting.Comm.Service.ConstService.UrlParaToken + "={2}";
            string tokenStr = securityToken.TokenId;

            var redirectUrl = string.Format(returnFormat, returnUrl, splitStr, tokenStr);
            return Redirect(redirectUrl);
        }
示例#4
0
        protected RedirectResult UserLoginedAndRedirect(iPow.Service.SSO.Entity.User user)
        {
            #region user first login

            var tempOnlineUser = iPow.Service.SSO.WebService.OnLineUserService
                                 .OnLineUserList.Where(e => e.username == user.username && e.id == user.id)
                                 .FirstOrDefault();

            if (tempOnlineUser == null)
            {
                var onlineUser = new iPow.Service.SSO.Entity.OnlineUser()
                {
                    Activity       = user.Activity,
                    DepartmentID   = user.DepartmentID,
                    Email          = user.Email,
                    EmployeeID     = user.EmployeeID,
                    id             = user.id,
                    lastloginip    = user.lastloginip,
                    lastlogintime  = user.lastlogintime,
                    LoginDomain    = user.LoginDomain,
                    LoginIpAddress = user.LoginIpAddress,
                    LoginTime      = System.DateTime.Now,
                    logintimes     = user.logintimes,
                    password       = user.password,
                    Phone          = user.Phone,
                    roleid         = user.roleid,
                    sex            = user.sex,
                    style          = user.style,
                    truename       = user.truename,
                    UserGuid       = user.UserGuid,
                    userid         = user.userid,
                    username       = user.username,
                    UserType       = user.UserType
                };
                iPow.Service.SSO.WebService.OnLineUserService.OnLineUserList.Add(onlineUser);
            }
            #endregion

            //add session 这里的session用法,要和子站点统一,管理好时间
            iPow.Infrastructure.Crosscutting.Function.SessionHelper.Add(
                iPow.Infrastructure.Crosscutting.Comm.Service.ConstService.SessionNameCurrentUser,
                user, iPow.Infrastructure.Crosscutting.Comm.Service.ConstService.SessionExpires);
            //添加 Cookie 一边以其它业务网站能够访问
            iPow.Infrastructure.Crosscutting.Comm.Service.SsoService.SendSsoUserLoginedCookie();
            //添加日志记录

            #region buileder secutity token

            iPow.Service.SSO.Entity.SecurityToken securityToken = new Entity.SecurityToken()
            {
                CreateTime = System.DateTime.Now,
                TokenId    = iPow.Infrastructure.Crosscutting.Comm.Service.SsoService.BuilderTokenId(),
                IsValid    = false,
                User       = user
            };
            iPow.Service.SSO.WebService.SecurityTokenService.SecurityTokenList.Add(securityToken);

            #endregion
            //返回
            var url = this.GetReturnUrl(securityToken.TokenId);
            return(Redirect(url));
        }
示例#5
0
        /// <summary>
        /// 用户已登录
        /// </summary>
        /// <param name="user">The user.</param>
        /// <param name="returnUrl">The return URL.</param>
        /// <returns></returns>
        private RedirectResult UserLogined(iPow.Service.SSO.Entity.User user, string returnUrl)
        {
            #region user first login

            var tempOnlineUser = iPow.Service.SSO.WebService.OnLineUserService
                                 .OnLineUserList.Where(e => e.username == user.username && e.id == user.id)
                                 .FirstOrDefault();

            if (tempOnlineUser == null)
            {
                var onlineUser = new iPow.Service.SSO.Entity.OnlineUser()
                {
                    Activity       = user.Activity,
                    DepartmentID   = user.DepartmentID,
                    Email          = user.Email,
                    EmployeeID     = user.EmployeeID,
                    id             = user.id,
                    lastloginip    = user.lastloginip,
                    lastlogintime  = user.lastlogintime,
                    LoginDomain    = user.LoginDomain,
                    LoginIpAddress = user.LoginIpAddress,
                    LoginTime      = System.DateTime.Now,
                    logintimes     = user.logintimes,
                    password       = user.password,
                    Phone          = user.Phone,
                    roleid         = user.roleid,
                    sex            = user.sex,
                    style          = user.style,
                    truename       = user.truename,
                    UserGuid       = user.UserGuid,
                    userid         = user.userid,
                    username       = user.username,
                    UserType       = user.UserType
                };
                iPow.Service.SSO.WebService.OnLineUserService.OnLineUserList.Add(onlineUser);
            }

            #endregion

            #region buileder secutity token

            iPow.Service.SSO.Entity.SecurityToken securityToken = new Entity.SecurityToken()
            {
                CreateTime = System.DateTime.Now,
                TokenId    = iPow.Infrastructure.Crosscutting.Comm.Service.SsoService.BuilderTokenId(),
                IsValid    = false,
                User       = user
            };
            iPow.Service.SSO.WebService.SecurityTokenService.SecurityTokenList.Add(securityToken);

            #endregion

            //add session 这里的session用法,要和子站点统一,管理好时间
            iPow.Infrastructure.Crosscutting.Function.SessionHelper.Add(
                iPow.Infrastructure.Crosscutting.Comm.Service.ConstService.SessionNameCurrentUser,
                user, iPow.Infrastructure.Crosscutting.Comm.Service.ConstService.SessionExpires);

            if (string.IsNullOrWhiteSpace(returnUrl))
            {
                return(Redirect("/"));
            }
            string splitStr     = returnUrl.Contains("?") ? "&" : "?";
            string returnFormat = "{0}{1}" + iPow.Infrastructure.Crosscutting.Comm.Service.ConstService.UrlParaToken + "={2}";
            string tokenStr     = securityToken.TokenId;

            var redirectUrl = string.Format(returnFormat, returnUrl, splitStr, tokenStr);
            return(Redirect(redirectUrl));
        }
示例#6
0
        private void UserLogined(iPow.Service.SSO.Entity.User user)
        {
            #region user first login

            var tempOnlineUser = iPow.Service.SSO.WebService.OnLineUserService
                 .OnLineUserList.Where(e => e.username == user.username && e.id == user.id)
                 .FirstOrDefault();

            if (tempOnlineUser == null)
            {
                var onlineUser = new iPow.Service.SSO.Entity.OnlineUser()
                {
                    Activity = user.Activity,
                    DepartmentID = user.DepartmentID,
                    Email = user.Email,
                    EmployeeID = user.EmployeeID,
                    id = user.id,
                    lastloginip = user.lastloginip,
                    lastlogintime = user.lastlogintime,
                    LoginDomain = user.LoginDomain,
                    LoginIpAddress = user.LoginIpAddress,
                    LoginTime = System.DateTime.Now,
                    logintimes = user.logintimes,
                    password = user.password,
                    Phone = user.Phone,
                    roleid = user.roleid,
                    sex = user.sex,
                    style = user.style,
                    truename = user.truename,
                    UserGuid = user.UserGuid,
                    userid = user.userid,
                    username = user.username,
                    UserType = user.UserType
                };
                iPow.Service.SSO.WebService.OnLineUserService.OnLineUserList.Add(onlineUser);
            }
            #endregion
        }