Atualizações do produto Logto
O Logto v1.39.0 chegou, trazendo uma rotação de chave de assinatura mais segura, um tratamento de erros mais inteligente em scripts JWT, controlos de segurança expandidos no Centro de Conta, suporte ao conector WhatsApp e melhorias chave de segurança.
Estamos entusiasmados por apresentar o Logto v1.39.0, uma versão focada em maior segurança operacional, personalização mais flexível de tokens e melhor segurança das contas dos utilizadores finais. Esta versão adiciona um período de carência para rotação de chave privada de assinatura, tratamento de erros configurável para scripts JWT personalizados, uma nova página de segurança no Centro de Conta, suporte ao conector WhatsApp via Meta Cloud API, e várias melhorias de segurança e fiabilidade nos fluxos de autenticação.
Destaques
- Período de carência na rotação de chave privada de assinatura: O Logto agora suporta um período de carência ao rodar chaves privadas de assinatura, ajudando os clientes a renovar JWKS em cache sem tempo de inatividade.
- Tratamento de erros em scripts JWT personalizados: A personalização de JWT em access token e client credentials pode agora bloquear a emissão do token quando o script falha.
- Página de segurança no Centro de Conta: Os utilizadores finais podem agora gerir a ligação de contas sociais, MFA e eliminação de conta diretamente no Centro de Conta.
- Conector WhatsApp: Um novo conector de SMS do WhatsApp está disponível através da Meta Cloud API.
- Correções de segurança e compatibilidade: As respostas de verificação de esquecimento de palavra-passe agora estão unificadas para reduzir o risco de enumeração de contas, e redirecionamentos sociais/SSO em browsers in-app estão mais resilientes.
Novas funcionalidades e melhorias
Período de carência para rotação de chave de assinatura privada
O Logto agora suporta um período de carência durante a rotação da chave privada de assinatura.
Isto pode ser configurado através de:
- Da variável de ambiente
PRIVATE_KEY_ROTATION_GRACE_PERIOD. - Da opção CLI
--gracePeriod.
Durante o período de carência:
- A nova chave de assinatura gerada é marcada como Next.
- A chave de assinatura existente mantém-se ativa como Current.
- Os clientes têm tempo para renovar as JWKS em cache antes da nova chave ficar ativa.
Após o fim do período de carência:
- A nova chave privada de assinatura transita para Current.
- A chave de assinatura antiga é marcada como Previous.
Isto proporciona um processo de rotação de chave mais suave e ajuda a evitar falhas de autenticação devido a caches de JWKS obsoletos.
Documentação: Rodar chaves de assinatura
Tratamento de erros em scripts JWT personalizados
O Logto agora suporta tratamento de erros configurável para scripts JWT personalizados utilizados nos fluxos de access token e client credentials.
Alterações incluídas:
- Scripts JWT personalizados podem agora bloquear a emissão do token quando a execução falha.
api.denyAccess()mantém-se como respostaaccess_denied.- Outras falhas de execução no modo de bloqueio são devolvidas como respostas localizadas
invalid_request. - O Console adiciona um separador dedicado de Tratamento de Erros para configuração do comportamento.
- Scripts criados de raiz definem
blockIssuanceOnErrorcomo ativado por defeito. - Scripts já existentes sem valor guardado mantêm o comportamento legado desativado.
- Textos, esquemas e documentação relacionados no Console foram atualizados.
Isto permite aos programadores escolher se quer que falhas na personalização dos tokens resultem em bloqueio ou não, conforme os requisitos de segurança.
Página de segurança no Centro de Conta
Esta versão adiciona uma nova página de segurança ao Centro de Conta incluído por padrão.
Os utilizadores finais podem agora gerir a segurança da conta em /account/security, incluindo:
- Ligação e desligação de contas sociais.
- MFA com verificação em 2 passos.
- Eliminação de conta.
Apoio no Console:
- As definições do Centro de Conta na experiência de início de sessão agora mostram o campo do URL para eliminação de conta.
- O Console evidencia as entradas do UI pré-fabricado da Área de Conta e redes sociais.
Conector WhatsApp via Meta Cloud API
Foi adicionado um novo conector WhatsApp para envio de mensagens através da Meta Cloud API.
Isto permite cenários de entrega de SMS/código de verificação via WhatsApp utilizando a integração oficial Meta Cloud API.
Corpos de resposta na API de atribuição de organizações
As APIs de atribuição de utilizadores e funções a organizações agora devolvem corpos de resposta.
Endpoints atualizados:
POST /organizations/:id/usersagora retorna{ userIds: string[] }, ecoando os IDs dos utilizadores enviados no pedido.POST /organizations/:id/users/:userId/rolesagora retorna{ organizationRoleIds: string[] }, contendo os IDs de funções atribuídas ao utilizador, incluindo IDs resolvidos dos nomes das funções fornecidas.
Atualização do token de tema do Console
Os temas do Console agora incluem o token em falta --color-overlay-primary-subtle tanto no modo claro como escuro.
Correções de bugs e estabilidade
Proteção contra enumeração na verificação de palavra-passe esquecida
A verificação de palavra-passe esquecida retorna agora um erro unificado verification_code.code_mismatch.
Isto evita que o fluxo exponha se um e-mail ou número de telefone existe através de respostas de erro diferentes.
Redirecionamentos sociais e SSO em browsers in-app
Maior fiabilidade dos redirecionamentos sociais e SSO em browsers in-app como Instagram, Facebook e LINE.
Alguns destes browsers abrem as páginas de OAuth do fornecedor de identidade num novo WebView, o que pode levar à perda de sessionStorage após o redirecionamento.
Esta versão adiciona um fallback com localStorage:
- O estado do redirecionamento continua guardado em
sessionStorage. - Um bundle de contexto do redirecionamento também é guardado em
localStorage. - Quando há callback, o Logto restaura o estado de
localStoragese faltar osessionStorage. - As entradas fallback são consumidas ao serem lidas e limpas automaticamente após 10 minutos.
- Se ambos os locais de armazenamento estiverem vazios, o utilizador vê uma mensagem de erro toast.
IP do pedido no conector de código de verificação
Corrigido um problema em que o IP do pedido não era passado aos conectores ao enviar códigos de verificação.
Isto permite que os conectores recebam o contexto correto do pedido para entrega do código de verificação.

