Exemplo n.º 1
0
        public void SetAuthenticationCookie(IQuickspatchPrincipal principal, string authToken, DateTime?expires)
        {
            var serializer = new JavaScriptSerializer();
            var authCookie = HttpContext.Current.Request.Cookies[ClaimsDeclaration.AuthenticationCookie];
            var issueDate  = DateTime.UtcNow;

            if (authCookie != null)
            {
                expires = expires.HasValue ? expires : authCookie.Expires;

                //Remove existing cookies:
                RemoveCookie(authCookie, -1);
            }

            // Write session token. Retrieve maximum duration from the session returned from the session
            // controller. Set the cookie scope to the application path, and only the application path.
            if (expires != null)
            {
                var sessionCookie = new HttpCookie(ClaimsDeclaration.AuthenticationCookie, principal.AuthToken)
                {
                    HttpOnly = true,
                    Expires  = (DateTime)expires
                };

                HttpContext.Current.Response.Cookies.Add(sessionCookie);
                SetPrincipalCache(principal, principal.AuthToken, sessionCookie.Expires);
            }
        }
Exemplo n.º 2
0
 public void SignIn(IQuickspatchPrincipal principal, bool rememberMe, string authToken, DateTime?expires)
 {
     SetAuthenticationCookie(principal, authToken, expires);
 }
Exemplo n.º 3
0
 /// <summary>
 ///     Update principal for security threads.
 /// </summary>
 public void UpdatePrincipal(IQuickspatchPrincipal principal)
 {
     FormAuthenticationService.SetPrincipalCache(principal, principal.AuthToken, null);
 }