auth
Cenários de teste e debug - Autenticação & Sessão
Módulos principais relacionados:
config/processa_login.phpconfig/process_forgot_password.phpconfig/reset-password.phpconfig/sessao_config.php- Telas:
index.php,forgot-password.php,reset-password.php
Checklist geral
- Login com credenciais válidas (usuário ativo).
- Login com email inexistente.
- Login com senha incorreta.
- Login com usuário com status
Pendente. - Login com usuário com status
Inativo/Desativado. - Tentativa de login com campos vazios.
- Recuperação de senha (fluxo completo).
- Sessão expirada / hash inválido.
Fluxo: Login
Pontos de entrada
- Frontend:
index.php(#loginFormvia AJAX). - Backend:
config/processa_login.php.
Cenários principais
-
Sucesso
- Ação:
- Preencher email + senha válidos.
- Enviar formulário.
- Expectativa:
- Resposta JSON com
status: success. - Dados de usuário e permissões enviados.
- Redirecionamento para
dashboard/dashboard.php.
- Resposta JSON com
- Pontos de log sugeridos (
app_log):- Entrada:
- Módulo:
LOGIN - Ação:
VALIDACAO_ENTRADA - Contexto:
['email' => $email, 'ip' => $_SERVER['REMOTE_ADDR']]
- Módulo:
- Usuário encontrado:
- Módulo:
LOGIN - Ação:
USUARIO_ENCONTRADO - Contexto:
['userId' => $colaborador['id'], 'status' => $colaborador['status']]
- Módulo:
- Autenticação ok:
- Módulo:
LOGIN - Ação:
AUTENTICACAO_SUCESSO - Contexto:
['userId' => $colaborador['id'], 'whiteLabelId' => $colaborador['white_label_id'] ?? null]
- Módulo:
- Entrada:
- Ação:
-
Email inexistente
- Ação:
- Usar email não cadastrado.
- Expectativa:
- Resposta
status: error, mensagem “Usuário não encontrado”.
- Resposta
- Logs sugeridos:
- Módulo:
LOGIN - Ação:
USUARIO_NAO_ENCONTRADO - Contexto:
['email' => $email]
- Módulo:
- Ação:
-
Senha incorreta
- Ação:
- Email válido, senha errada.
- Expectativa:
- Resposta
status: error, mensagem “Senha incorreta!”.
- Resposta
- Logs sugeridos:
- Módulo:
LOGIN - Ação:
SENHA_INCORRETA - Contexto:
['userId' => $colaborador['id']]
- Módulo:
- Ação:
-
Usuário pendente/inativo
- Ação:
- Usar usuário com
statusdiferente deAtivo.
- Usar usuário com
- Expectativa:
- Mensagem adequada (pendente ou desativado).
- Logs sugeridos:
- Módulo:
LOGIN - Ação:
USUARIO_BLOQUEADO - Contexto:
['userId' => $colaborador['id'], 'status' => $colaborador['status']]
- Módulo:
- Ação:
-
Erros internos
- Ação:
- Simular falha de banco (
db.php), prepare/execute com erro, etc.
- Simular falha de banco (
- Expectativa:
- HTTP 500 com mensagem genérica.
- Detalhes em log de erro PHP e em logs de aplicação.
- Logs sugeridos:
- Módulo:
LOGIN - Ação:
ERRO_DB - Nível:
ERROR - Contexto: mensagem de exceção / erro.
- Módulo:
- Ação:
Fluxo: Sessão e permissões
Cenários principais
- Acesso ao dashboard com sessão válida.
- Acesso ao dashboard sem sessão (redirecionar ou erro).
- Acesso a rota/tela sem permissão.
Pontos de log sugeridos
- Módulo:
SESSAO- Ação:
VALIDACAO_HASH - Contexto:
['userId' => $_SESSION['user_id'] ?? null]
- Ação:
- Módulo:
PERMISSOES- Ação:
PERMISSAO_NEGADA - Contexto:
['userId' => $_SESSION['user_id'] ?? null, 'permissao' => $permissaoNecessaria]
- Ação: