/// <summary>
        /// Verifica se será necessário autenticar no webservice do cliente ou se utilizará senha salva no autenticador
        /// </summary>
        /// <param name="usu"> Objeto Usuário carregado do autenticador</param>
        /// <returns>Enum indicando onde será feita a validação: 1 [Webservice], 2 [Histórico de senhas] e 3 [Não encontrado a integração]</returns>
        public static eValidacaoWebService VerificaSenhaUsuarioWebService(SYS_Usuario usu)
        {
            eValidacaoWebService        status    = eValidacaoWebService.ValidarNoWebService;
            SYS_IntegracaoExternaTipoBO ietBO     = new SYS_IntegracaoExternaTipoBO();
            SYS_IntegracaoExternaTipo   ietEntity = new SYS_IntegracaoExternaTipo {
                iet_id = usu.usu_integracaoExterna
            };

            if (ietBO.getById(ietEntity))
            {
                Guid      usu_id  = usu.usu_id;
                DataTable dtSenha = SYS_UsuarioSenhaHistoricoBO.SelecionaUltimaSenha(usu_id, null);

                if (dtSenha.Rows.Count > 0)
                {
                    DateTime ush_data = Convert.ToDateTime(dtSenha.Rows[0]["max_data"].ToString());
                    TimeSpan a        = DateTime.Now.Subtract(ush_data);

                    if (a.Days > ietEntity.iet_qtdeDiasAutenticacao)
                    {
                        status = eValidacaoWebService.ValidarNoWebService;
                    }
                    else
                    {
                        status = eValidacaoWebService.ValidarComSenhaDoHistorico;
                    }
                }
            }
            else
            {
                status = eValidacaoWebService.IntegrcacaoNaoEncontrada;
            }

            return(status);
        }
        public LoginStatus ValidarAutenticacao(SYS_Usuario entityUsuario)
        {
            eVerificaTipoAutenticacao validacaoStatus = eVerificaTipoAutenticacao.UsuNaoEncontrado;
            int indexAD = entityUsuario.usu_login.IndexOf('\\');

            if (indexAD <= 0)
            {
                validacaoStatus = VerificaTipoAutenticacao(entityUsuario);
            }
            else
            {
                validacaoStatus = eVerificaTipoAutenticacao.Autenticador;
            }

            LoginStatus status = LoginStatus.NaoEncontrado;

            //VERIFICA O TIPO DE VALIDAÇÃO
            if (validacaoStatus == eVerificaTipoAutenticacao.Autenticador)
            {
                // Checa as credenciais do usuário
                status = SYS_UsuarioBO.ValidarLogin(entityUsuario);
            }
            else if (validacaoStatus == eVerificaTipoAutenticacao.WebService)
            {
                eValidacaoWebService ValidacaoStatus = VerificaSenhaUsuarioWebService(entityUsuario);

                if (ValidacaoStatus == eValidacaoWebService.ValidarNoWebService)
                {
                    // TEM QUE VERIFICAR QUAL A INTEGRACAO EXTERNA E DIRECIONAR
                    status = ValidaUsuarioWebService(entityUsuario);
                }
                else if (ValidacaoStatus == eValidacaoWebService.ValidarComSenhaDoHistorico &&
                         (ValidarUsuarioHistoricoSenha(entityUsuario) == LoginStatus.SenhaInvalida))
                {
                    status = ValidaUsuarioWebService(entityUsuario);
                }
                else if (ValidacaoStatus == eValidacaoWebService.IntegrcacaoNaoEncontrada)
                {
                    status = LoginStatus.Erro;
                }
            }

            return(status);
        }