Beispiel #1
0
 private static void SetPrincipalToContext(NucleoPrincipal principal)
 {
     AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal);
     AppDomain.CurrentDomain.SetThreadPrincipal(principal);
     //Thread.CurrentPrincipal = principal;
     CurrentUser = principal;
 }
Beispiel #2
0
        /// <summary>
        /// Método que genera el Principal con la cookie y el Identity
        /// </summary>
        /// <param name="ticket">Ticket encriptado con los datos de la cookie</param>
        /// <param name="setContext">Especifica si debe crearse el contexto de seguridad (Principal)</param>
        /// <returns>Retorna la identidad del usuario <see cref="NucleoIdentity"/></returns>
        public static NucleoIdentity Authenticate(string ticket, bool setContext)
        {
            try
            {
                var principal = new NucleoPrincipal(ticket);

                if (setContext)
                {
                    SetPrincipalToContext(principal);
                }

                return(principal.NucleoIdentity);
            }
            catch (Exception ex)
            {
                ExceptionPolicy.HandleException(ex, Defaults.DefaultExceptionPolicy);
                throw ex;
            }
        }