ADR-0005 - Access Token com TTL Curto sem Blacklist Global¶
Status: Proposto
Data: 2026-03-08
1. Contexto¶
O modelo atual usa access token stateless e refresh token com rotação/revogação.
A revogação imediata de access token por blacklist global adiciona custo operacional alto em API de alto tráfego.
2. Decisão¶
Manter access token stateless, adotando TTL curto como mitigação principal, combinado com refresh rotation e revogação de sessão.
Parâmetro alvo inicial:
- access token: 10 minutos
- refresh token: rotação + revogação por logout/reuse/anomalia
3. Alternativas consideradas¶
-
Blacklist global de access token por request
Rejeitada por custo de consulta em toda requisição e aumento de complexidade operacional. -
Sessão obrigatória validada em todo access token (
session_active)
Válida em cenário de risco elevado, mas fora do baseline atual por impacto de latência/custo.
4. Consequências¶
Positivas: - mantém baixo overhead por request; - reduz janela de abuso de access token comprometido; - preserva simplicidade arquitetural.
Custos: - existe janela residual de validade até expiração; - necessidade de disciplina em TTL e rotação.
5. Plano de migração¶
- Definir TTL curto padrão em configuração.
- Validar comportamento de refresh em clientes web/mobile.
- Monitorar aumento de refresh e ajustar limites/rate limit.
Critérios de aceite: - access token emitido com TTL alvo; - fluxo de refresh estável sem regressão de UX crítica; - revogação de refresh mantém bloqueio efetivo de sessão.