Beispiel #1
0
        void MvcApplication_AuthorizeRequest(object sender, EventArgs e)
        {
            var principal = WFFormsAuthentication.TryParsePrincipal(Context);

            if (principal != null && principal.UserData != null)
            {
                Context.User = principal;
            }
        }
Beispiel #2
0
        public WFFormPrincipal(FormsAuthenticationTicket ticket, WFFormsAuthentication userData)
        {
            if (ticket == null)
            {
                throw new ArgumentNullException("ticket");
            }

            if (userData == null)
            {
                throw new ArgumentNullException("userData");
            }

            Identity = new FormsIdentity(ticket);
            UserData = userData;
        }
Beispiel #3
0
        public static string SetAuthCookie(string username, WFFormsAuthentication userData, bool remember)
        {
            if (userData == null)
            {
                throw new ArgumentNullException("userData");
            }

            var data = Newtonsoft.Json.JsonConvert.SerializeObject(userData);

            var expires = remember ? DateTime.Now.AddDays(30) : DateTime.Now.AddDays(1);

            var ticket = new FormsAuthenticationTicket(1, username, DateTime.Now, expires, true, data);

            var cookieValue = FormsAuthentication.Encrypt(ticket);

            var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, cookieValue)
            {
                HttpOnly = false,
                Secure   = FormsAuthentication.RequireSSL,
                Domain   = FormsAuthentication.CookieDomain,
                Path     = FormsAuthentication.FormsCookiePath,
            };

            cookie.Expires = expires;
            HttpContext context = HttpContext.Current;

            if (context == null)
            {
                throw new InvalidOperationException();
            }

            context.Response.Cookies.Remove(cookie.Name);
            context.Response.Cookies.Add(cookie);

            return(cookieValue);
            //context.Response.Cookies.Add(new HttpCookie("test", DateTime.Now.ToString("yyyyMMdd HHmmss")) {  Expires=DateTime.Now.AddDays(1)});
        }