You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Esse card fecha a saga do login. Aqui, o que foi feito nos cards anteriores deixa de ser isolado e passa a valer para o app inteiro.
Se o usuário está logado, ele acessa a aplicação. Se não está, ele é redirecionado pro login, sem perdão.
Além disso, o app precisa lembrar da sessão mesmo após atualizar ou reiniciar.
Ah, e claro: logout deve funcionar lindamente, limpando tudo e voltando pro login como se nada tivesse acontecido.
Caution
Esse é o card onde o P.O. chora se algo quebrar.
Qualquer falha aqui significa que todo o sistema perde controle de acesso.
🎯 Objetivos:
Proteger o app inteiro contra acessos não-autenticados
Redirecionar corretamente usuários conforme estado
Manter a sessão ativa mesmo após fechar ou atualizar
Permitir logout seguro e completo
Tornar a ViewModel globalmente acessível e reativa
Esse card fecha a saga do login. Aqui, o que foi feito nos cards anteriores deixa de ser isolado e passa a valer para o app inteiro.
Se o usuário está logado, ele acessa a aplicação. Se não está, ele é redirecionado pro login, sem perdão.
Além disso, o app precisa lembrar da sessão mesmo após atualizar ou reiniciar.
Ah, e claro: logout deve funcionar lindamente, limpando tudo e voltando pro login como se nada tivesse acontecido.
Caution
Esse é o card onde o P.O. chora se algo quebrar.
Qualquer falha aqui significa que todo o sistema perde controle de acesso.
🎯 Objetivos:
🚦Fluxo de estado da sessão
stateDiagram-v2 [*] --> VerificarSessao VerificarSessao --> Autenticado : token válido VerificarSessao --> NaoAutenticado : sem token ou inválido NaoAutenticado --> RedirecionaLogin Autenticado --> AppDestravado Logout --> LimpaSessao LimpaSessao --> RedirecionaLogin📦 Deve conter:
SessionViewModelprecisa ser acessível de qualquer ponto da aplicação✅ Critérios de Aceite (QA):
🧠 Considerações técnicas esperadas:
main(),App(),initState, etc.)Important
O token nunca deve ficar salvo em variáveis voláteis. Use uma estratégia segura e compatível com todas as plataformas-alvo (Web, Desktop, Mobile).
📌 Lembretes finais:
Tip
Se estiver com dúvida sobre o funcionamento do controle de sessão, verifique:
Note
O QA deve usar simulações de sessão para validar a integridade (testar login, logout, redirecionamento manual, manipular token, etc).