Postmortem: mudança inesperada em `iss` do JWT
Relatório de incidente para a mudança inesperada em `iss` do JWT em 2024-03-18.
Relatório de incidente para a mudança inesperada em `iss` do JWT em 2024-03-18.
Em 2024-03-18, uma atualização que alterou o comportamento do emissor do JWT no Logto Cloud quebrou fluxos de autenticação para usuários com domínios personalizados e validação de iss. A correção exigiu que esses usuários atualizassem sua lógica de validação.
iss.iss dentro dos fluxos de autenticação.A atualização alterou o campo iss para corresponder ao domínio solicitado, quebrando validações existentes que esperavam o emissor padrão anterior.
iss.O Logto Cloud suporta domínio personalizado para autenticação, desenvolvedores que têm locatários com domínio personalizado habilitado podem definir o endpoint para o domínio personalizado nos SDKs, então o usuário final usará este endpoint para iniciar o processo de autenticação e obter tokens. Alguns tokens estão na forma de JWT, que incluem um campo iss indicando o emissor desse token. Anteriormente, mesmo quando um endpoint de domínio personalizado era usado para solicitar um token de acesso, o emissor ainda seria por padrão nosso domínio padrão ([tenant-id].logto.app).
Mas o domínio do emissor deve ser o mesmo que o endpoint solicitado. Então, lançamos uma atualização para corrigir esse problema, e agora o campo iss refletirá automaticamente o domínio usado na solicitação.
Para aqueles que já estão usando o domínio personalizado para conceder tokens e implementaram a validação do campo iss no servidor de recursos, essa pode ser uma mudança crítica. A verificação de autenticação existente falhará por causa da mudança do emissor. Para corrigir isso, os desenvolvedores precisam mudar o código de validação, substituindo o emissor esperado pelo novo com domínio personalizado.
Não conseguimos considerar completamente o impacto nas validações iss existentes, como resultado, essa liberação se tornou uma mudança crítica sem notificação prévia.
Notificamos os usuários afetados via email, aconselhando-os a atualizar sua validação de iss para corresponder ao domínio solicitado.
A mudança é uma correção necessária para o campo do emissor, e alguns usuários podem já ter se adaptado ao novo comportamento. Uma reversão causaria confusão e inconsistência.