Pular para o conteúdo
Bruno Alexandre Tecnologia, infraestrutura e desenvolvimento

Por que o token de sessão precisa ser aleatório e trocar de tempos em tempos

Um token previsível ou que nunca muda é um token que se adivinha. Entenda o que significa aleatório de verdade e onde a rotação evita o dano.

Bruno Alexandre 16/10/2026 5 leituras
Por que o token de sessão precisa ser aleatório e trocar de tempos em tempos
O token de sessão é uma credencial. Tratar uma credencial como credencial significa duas coisas: que ela não pode ser adivinhada e que ela pode ser trocada.

A primeira é sobre aleatoriedade. Um token curto, formado por data, número de sequência e nome de usuário, é adivinhável. Qualquer pessoa que descubra o formato consegue montar valores válidos sem esforço. O token precisa ter entropia suficiente, gerado por um gerador criptográfico, e precisa ter tamanho suficiente para que a busca por força bruta seja impensável. Quando o valor do token aparece em log de acesso, em mensagem de erro ou em endereço de página, ele deixa de ser credencial e vira texto público.

A segunda é sobre rotação. Um token que nunca muda é um token que fica valido por mais tempo do que deveria. Quando a pessoa troca a senha, o ideal é que o token também mude, porque um token antigo continua sendo uma chave antiga da conta. Quando a pessoa sobe de privilégio, o ideal é que o token mude de novo, para que uma sessão de menor privilégio não se transforme numa sessão maior só porque o valor antigo escapou.

O fluxo legítimo da sessão: o token é criado, guardado e devolvido a cada requisição
O fluxo legítimo da sessão: o token é criado, guardado e devolvido a cada requisição


Há ainda a rotação periódica, que existe por um motivo simples: o token fica exposto toda vez que o navegador faz uma requisição, e cada uma dessas requisições é uma chance. Trocar o identificador de tempos em tempos reduz a janela útil de um token comprometido, sem exigir que a pessoa perceba nada.

O erro comum é tratar a rotação como formalidade, chamando o mesmo valor de identificador de sessão por anos. O resultado é que um único token vazado continua valendo por meses, e o cliente que teve a conta acessada não tem como sair disso.

Leia também