Ejemplo n.º 1
0
 /// <summary>
 /// 用户登陆(分站点使用)
 /// </summary>
 /// <param name="UserName">用户名</param>
 /// <param name="PWD">密码(密码为空时,直接获取已登录用户信息)</param>
 /// <param name="Token">登录票据</param>
 public bool RemoteUserLogin(string UserName, string PWD, string Token)
 {
     EyouSoft.SSOComponent.Entity.SSOResponse response = null;
     if (PWD != string.Empty)
     {
         response = new EyouSoft.SSOComponent.Remote.UserLogin().UserLoginPassword(UserName, PWD, Token, PasswordType.MD5);
     }
     else
     {
         response = new EyouSoft.SSOComponent.Remote.UserLogin().GetTicketUser(UserName, Token);
     }
     if (response.IsValid)
     {
         EyouSoft.SSOComponent.Entity.UserInfo User = response.UserInfo;
         if (User == null)
         {
             return(false);
         }
         else
         {
             return(true);
         }
     }
     else
     {
         return(false);
     }
 }
Ejemplo n.º 2
0
        /// <summary>
        /// 退出当前用户,并跳转到指定的页面。
        /// </summary>
        /// <param name="url">指定退出后要跳转的页面地址</param>
        private static void Logout(string url)
        {
            EyouSoft.SSOComponent.Entity.SSOResponse response = new EyouSoft.SSOComponent.Remote.UserLogin().UserLogout(GetCookie_U(), "");

            string domainSuffix = Utils.GetDomainSuffix(Utils.AbsoluteWebRoot);

            System.Web.HttpCookie cookies = new HttpCookie(LoginCookie_SSO);
            if (!String.IsNullOrEmpty(domainSuffix))
            {
                cookies.Domain = domainSuffix;
            }

            cookies.HttpOnly = true;
            cookies.Expires  = DateTime.Now.AddDays(-1);
            HttpContext.Current.Response.AppendCookie(cookies);

            if (string.IsNullOrEmpty(url))
            {
                RedirectLogin();
            }
            else
            {
                HttpContext.Current.Response.Redirect(url, true);
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// API用户登陆
        /// </summary>
        /// <param name="UserName">用户名</param>
        /// <param name="PWD">密码</param>
        /// <param name="PwdType">密码类型</param>
        public void APIUserLogin(string UserName, string PWD, PasswordType PwdType)
        {
            EyouSoft.SSOComponent.Entity.DecryptLoginTicket LoginTicket = new EyouSoft.SSOComponent.Entity.DecryptLoginTicket();
            LoginTicket.ExpireTime = DateTime.Now.AddHours(TicketExpireTime);
            LoginTicket.UserName   = UserName;
            string strLoginTicket = CreateLoginTicket(LoginTicket);

            EyouSoft.SSOComponent.Entity.SSOResponse response = new EyouSoft.SSOComponent.Remote.UserLogin().UserLoginPassword(UserName, PWD, strLoginTicket, PwdType);
            if (response != null)
            {
                if (!response.IsValid)
                {
                    return;
                }
                EyouSoft.SSOComponent.Entity.UserInfo User = response.UserInfo;
                HttpCookie hc = new HttpCookie(UserCookieName);
                hc.Values.Add("UID", crypto.DESEncrypt(User.ID.ToString()));
                hc.Values.Add("LoginTicket", strLoginTicket);
                hc.Domain = "asdf";
                HttpContext.Current.Response.Cookies.Add(hc);
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 获取用户信息
        /// </summary>
        /// <returns></returns>
        public EyouSoft.SSOComponent.Entity.UserInfo GetUser()
        {
            EyouSoft.SSOComponent.Entity.LocalUserInfo LocalUser = GetLoginTicket(TicketType.UserCookieName);

            if (LocalUser == null)
            {
                return(null);
            }

            if (LocalUser.DecryptLoginTicket.ExpireTime > DateTime.Now)
            {
                return(null);
            }
            EyouSoft.SSOComponent.Entity.UserInfo User = new EyouSoft.SSOComponent.Remote.UserLogin().GetUserInfo(LocalUser.UID);
            if (ValidateUser(User))
            {
                return(User);
            }
            else
            {
                return(null);
            }
        }
Ejemplo n.º 5
0
 /// <summary>
 /// 用户退出
 /// </summary>
 public void UserLogout()
 {
     EyouSoft.SSOComponent.Entity.UserInfo    User     = GetUser();
     EyouSoft.SSOComponent.Entity.SSOResponse response = new EyouSoft.SSOComponent.Remote.UserLogin().UserLogout(User.ID, RedirectUrl);
 }
Ejemplo n.º 6
0
 /// <summary>
 /// 获取用户信息
 /// </summary>
 /// <returns></returns>
 public static EyouSoft.SSOComponent.Entity.UserInfo GetUser(string userName)
 {
     EyouSoft.SSOComponent.Entity.SSOResponse response = new EyouSoft.SSOComponent.Remote.UserLogin().GetUserInfo(userName);
     return(response.UserInfo);
 }
Ejemplo n.º 7
0
 /// <summary>
 /// 获取用户信息
 /// </summary>
 /// <returns></returns>
 public static EyouSoft.SSOComponent.Entity.UserInfo GetUser()
 {
     EyouSoft.SSOComponent.Entity.SSOResponse response = new EyouSoft.SSOComponent.Remote.UserLogin().GetUserInfo(GetCookie_U());
     return(response.UserInfo);
 }