public Int32 Salvar(Usuario usuario, string senhaHash, AutenticacaoExecutor executor, BancoDeDados banco = null) { int ret = 0; using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bool flagAuditavel = false; try { if (usuario == null) { throw new ApplicationException("Objeto usuário é nulo"); } if (String.IsNullOrEmpty(senhaHash)) { throw new ApplicationException("senha de usuário é nula"); } if (String.IsNullOrEmpty(usuario.Login)) { throw new ApplicationException("login de usuário é nulo"); } if (executor.UsuarioId <= 0) { throw new ApplicationException("Executor Id de usuário é zero"); } if (executor.Tipo <= 0) { throw new ApplicationException("Executor Tipo é zero"); } if (String.IsNullOrEmpty(executor.Tid)) { throw new ApplicationException("Executor Tid é nulo"); } if (!UsuarioValidacao.FormatoLogin(usuario.Login)) { throw new ApplicationException("Formato do login é inválido"); } ret = _da.Salvar(usuario, senhaHash, executor, bancoDeDados); flagAuditavel = true; } finally { Auditoria.Evento(EventoAuditavel.Criar, usuario, flagAuditavel); } } return(ret); }
public int ObterIdPorLogin(string login) { Usuario usuario = new Usuario(); try { usuario.Login = login; return(_da.ObterLoginId(login)); } finally { Auditoria.Evento(EventoAuditavel.Buscar, usuario); } }
public void Deslogar(string login, AutenticacaoExecutor executor, bool deslogarForcado = false, BancoDeDados banco = null) { bool flagAuditavel = false; Usuario usuario = new Usuario(); usuario.Login = login; try { _da.Deslogar(login, executor, deslogarForcado, banco); flagAuditavel = true; } finally { Auditoria.Evento(EventoAuditavel.Logout, usuario, flagAuditavel); } }
public void AlterarSenha(Usuario usuario, String senhaHash, AutenticacaoExecutor executor, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bool flagAuditavel = false; try { _da.AlterarSenha(usuario, senhaHash, executor, bancoDeDados); flagAuditavel = true; } finally { Auditoria.Evento(EventoAuditavel.AlterarSenha, usuario, flagAuditavel); } } }
public void Autenticar(Usuario usuario, bool ehUsuarioValido, int executorTipo, BancoDeDados banco = null) { try { if (ehUsuarioValido) { AutenticacaoExecutor executor = new AutenticacaoExecutor() { UsuarioId = usuario.Id, Tipo = executorTipo, Tid = usuario.TID }; _da.Autenticar(usuario.Login, usuario.Id, usuario.Ip, executor, banco); } } finally { Auditoria.Evento((ehUsuarioValido) ? EventoAuditavel.Logon : EventoAuditavel.LogonFalha, usuario, ehUsuarioValido); } }