Pular para o conteúdo principal

Rotacionar chaves de assinatura (OSS)

nota:

Se você está usando o Logto Cloud, pode rotacionar as chaves de assinatura na interface do Console. Por favor, consulte este tutorial.

O Logto OSS oferece suporte à rotação de chaves de assinatura desde a versão v1.8.

As chaves de assinatura OIDC do Logto, também conhecidas como “chaves privadas OIDC” e “chaves de cookie OIDC”, são as chaves usadas para assinar JWTs (tokens de acesso (Access tokens) e tokens de ID (ID tokens)) e cookies do navegador nas sessões de login do Logto.

Rotacionar suas chaves de assinatura regularmente pode reduzir os riscos de comprometimento potencial das chaves. O Logto recomenda que você rotacione suas chaves de assinatura pelo menos uma vez por ano.

Rotacionar chaves privadas de assinatura OIDC

Use o comando CLI abaixo para gerar uma nova chave privada de assinatura OIDC. A nova chave será utilizada automaticamente após a reinicialização.

Opções disponíveis:

--type    (Opcional) O algoritmo da chave de assinatura para seus JWTs.
Os valores são "rsa" ou "ec". O padrão é "ec".
logto db config rotate oidc.privateKeys --type rsa

Use o comando CLI abaixo para gerar uma nova chave de cookie OIDC. A nova chave será utilizada automaticamente após a reinicialização.

logto db config rotate oidc.cookieKeys

E as chaves anteriores?

Os comandos de rotação de chave do Logto não excluem suas chaves de assinatura anteriores, e elas permanecerão no banco de dados a menos que você as exclua manualmente.

Além disso, tenha cautela ao excluir suas chaves anteriores, pois isso pode causar problemas inesperados. Recomenda-se manter tanto a nova chave quanto a anterior por um período de tempo (por exemplo, 2 semanas), até que você tenha certeza de que todos os seus usuários migraram para a nova chave.

Solução de problemas

Usando Logto como Provedor OIDC no Cloudflare Zero Trust

Se você pretende usar o Logto como provedor OIDC com o Cloudflare Zero Trust, observe que ele não suporta provedores OIDC que utilizam algoritmos ECDSA. Ao rotacionar as chaves privadas de assinatura OIDC, certifique-se de usar o algoritmo RSA especificando --type rsa no comando de rotação:

logto db config rotate oidc.privateKeys --type rsa