public static void CarregarUser(string login, string sessionId = null) { if (HttpContext.Current.User == null || !(HttpContext.Current.User is EtramitePrincipal)) { if (!String.IsNullOrEmpty(sessionId)) { if (VerificarDeslogar(login, sessionId)) { HttpContext.Current.User = null; return; } } CredenciadoPessoa credenciado = _busCred.ObterCredenciadoAutenticacao(login); VerificarAtivo(credenciado); ePermissao[] arrayPerm = credenciado.Permissoes.Select(x => x.Codigo).ToArray(); EtramiteIdentity userIndentity = new EtramiteIdentity(credenciado.Nome, credenciado.Usuario.Login, credenciado.Email, credenciado.Usuario.DataUltimoLogon, credenciado.Usuario.IpUltimoLogon, credenciado.Id, credenciado.Tipo, credenciado.TipoTexto, credenciado.Tid, credenciado.Usuario.Id, 2); EtramitePrincipal userPrincipal = new EtramitePrincipal <ePermissao>(userIndentity, arrayPerm); HttpContext.Current.User = userPrincipal; } if (HttpContext.Current.User.Identity.IsAuthenticated) { UsuarioBus busUsuario = new UsuarioBus(HistoricoAplicacao.CREDENCIADO, UsuarioCredenciado); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(UsuarioCredenciado)) { bancoDeDados.IniciarTransacao(); busUsuario.SalvarDataUltimaAcao(login, bancoDeDados); bancoDeDados.Commit(); } } }