Example #1
0
        /// <summary>
        /// Logons the specified identity.
        /// </summary>
        /// <param name="identity">The identity.</param>
        /// <exception cref="System.ArgumentNullException">Identity required</exception>
        public void Logon(params IIdentity[] identity)
        {
            var claimsIdentities = identity?.Cast <ClaimsIdentity>().ToArray();

            if (claimsIdentities == null || claimsIdentities.Length < 0)
            {
                throw new ArgumentNullException("Identity required");
            }

            var ctx = _owinContextResolver.GetContext();
            var authenticationManager = ctx.Authentication;

            authenticationManager.SignIn(claimsIdentities);
            var prince = new ClaimsPrincipal(claimsIdentities);

            System.Web.HttpContext.Current.User      = prince;
            System.Threading.Thread.CurrentPrincipal = prince;
            ctx.Request.User = prince;
        }
        /// <summary>
        /// Gets the cookie.
        /// </summary>
        /// <param name="key">The key.</param>
        /// <returns>System.String.</returns>
        private string GetCookie(string key)
        {
            var context = _owinContextResolver.GetContext();
            var val     = _cookieManager.GetRequestCookie(context.Request.Cookies, key);

            if (val != null)
            {
                return(DecryptValue(val));
            }

            return(null);
        }