Ir para o conteúdo

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

  1. Blacklist global de access token por request
    Rejeitada por custo de consulta em toda requisição e aumento de complexidade operacional.

  2. 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

  1. Definir TTL curto padrão em configuração.
  2. Validar comportamento de refresh em clientes web/mobile.
  3. 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.