• release

Mises à jour du produit Logto

Logto v1.39.0 est arrivé, apportant une rotation plus sûre des clés de signature, une gestion plus intelligente des erreurs des scripts JWT, des contrôles de sécurité du Centre de compte étendus, la prise en charge du connecteur WhatsApp et des améliorations clés en matière de sécurité.

Simeng
Simeng
Developer

Arrêtez de perdre des semaines sur l'authentification des utilisateurs
Lancez des applications sécurisées plus rapidement avec Logto. Intégrez l'authentification des utilisateurs en quelques minutes et concentrez-vous sur votre produit principal.
Commencer
Product screenshot

Nous sommes ravis de présenter Logto v1.39.0, une version axée sur une sécurité opérationnelle renforcée, une personnalisation des jetons plus flexible et une sécurité des comptes utilisateurs améliorée. Cette version introduit une période de grâce pour la rotation des clés de signature privées, une gestion configurable des erreurs pour les scripts JWT personnalisés, une nouvelle page de sécurité dans le Centre de compte, la prise en charge du connecteur WhatsApp via l'API Meta Cloud, ainsi que plusieurs améliorations de sécurité et de fiabilité dans les flux d'authentification.

Points forts

  • Période de grâce pour la rotation des clés de signature privées : Logto prend désormais en charge une période de grâce lors de la rotation des clés de signature privées, permettant aux clients de rafraîchir les JWKS mis en cache sans interruption de service.
  • Gestion des erreurs pour les scripts JWT personnalisés : La personnalisation des JWT pour les jetons d'accès et les flux client credentials peut maintenant bloquer l'émission du jeton en cas d'échec d'exécution du script.
  • Page de sécurité du Centre de compte : Les utilisateurs finaux peuvent désormais gérer l'association de comptes sociaux, l'authentification à deux facteurs (MFA) et la suppression de leur compte depuis le Centre de compte.
  • Connecteur WhatsApp : Un nouveau connecteur SMS WhatsApp est disponible via l'API Meta Cloud.
  • Correctifs de sécurité et de compatibilité : Les réponses de vérification de mot de passe oublié sont maintenant unifiées afin de réduire les risques d'énumération de comptes, et les redirections sociales / SSO dans les navigateurs intégrés sont plus robustes.

Nouvelles fonctionnalités & améliorations

Période de grâce pour la rotation des clés de signature privées

Logto prend désormais en charge une période de grâce lors de la rotation des clés de signature privées.

Ceci peut être configuré via:

  • La variable d'environnement PRIVATE_KEY_ROTATION_GRACE_PERIOD.
  • L'option CLI --gracePeriod.

Durant la période de grâce :

  • La nouvelle clé de signature générée est marquée comme Prochaine.
  • La clé de signature existante reste active en tant que Actuelle.
  • Les clients disposent du temps nécessaire pour rafraîchir les JWKS mis en cache avant que la nouvelle clé ne devienne active.

Après la période de grâce :

  • La nouvelle clé de signature privée passe à Actuelle.
  • L'ancienne clé de signature est marquée comme Précédente.

Cela offre un processus de rotation des clés plus fluide et aide à éviter les échecs d'authentification dus à des caches JWKS obsolètes.

Documentation : Rotation des clés de signature

Gestion des erreurs des scripts JWT personnalisés

Logto prend désormais en charge la gestion configurable des erreurs pour les scripts JWT personnalisés utilisés dans les flux de jeton d'accès et d'identifiants client (client credentials).

Changements inclus :

  • Les scripts JWT personnalisés peuvent désormais bloquer l'émission du jeton en cas d'échec d'exécution.
  • api.denyAccess() est conservé comme réponse access_denied.
  • Les autres échecs de scripts en mode bloquant sont retournés comme réponses localisées invalid_request.
  • La Console ajoute un onglet dédié Gestion des erreurs pour configurer le comportement.
  • Les nouveaux scripts actifs définissent blockIssuanceOnError sur activé par défaut.
  • Les scripts existants sans valeur enregistrée conservent l'ancien comportement désactivé.
  • Les recommandations, expressions, schémas et couvertures d'intégration de la Console sont mis à jour en conséquence.

Cela permet aux développeurs de choisir si un échec de personnalisation de jeton doit entraîner un échec ouvert ou fermé, selon leurs besoins de sécurité.

Page de sécurité du Centre de compte

Cette version ajoute une nouvelle page de sécurité au Centre de compte prêt à l'emploi.

Les utilisateurs finaux peuvent désormais gérer la sécurité de leur compte sur /account/security, notamment :

  • L'association et la dissociation de comptes sociaux.
  • L'authentification à deux facteurs (MFA).
  • La suppression du compte.

Prise en charge Console :

  • Les paramètres du Centre de compte pour l'expérience de connexion exposent désormais un champ d'URL pour la suppression de compte.
  • La Console affiche le Centre de compte et les éléments d'interface sociaux préétablis.

Connecteur WhatsApp via l'API Meta Cloud

Un nouveau connecteur WhatsApp est ajouté pour l'envoi de messages via l'API Meta Cloud.

Cela permet des scénarios de livraison de SMS / code de vérification sur WhatsApp grâce à l'intégration officielle avec l'API Meta Cloud.

Corps de réponses de l'API d'attribution d'organisation

Les API d'attribution d'utilisateur et de rôle à l'organisation retournent désormais des corps de réponse.

Points de terminaison mis à jour :

  • POST /organizations/:id/users retourne désormais { userIds: string[] }, reflétant les IDs utilisateurs envoyés dans la requête.
  • POST /organizations/:id/users/:userId/roles retourne désormais { organizationRoleIds: string[] }, contenant les IDs de rôle finaux et dédupliqués assignés à l'utilisateur, incluant les IDs résolus à partir des noms de rôles fournis.

Mise à jour des tokens de thème de Console

Les thèmes de la Console incluent désormais le token manquant --color-overlay-primary-subtle pour les modes clair et sombre.

Corrections de bugs & stabilité

Protection contre l'énumération lors de la vérification de mot de passe oublié

La vérification du mot de passe oublié retourne désormais une erreur unifiée verification_code.code_mismatch.

Cela empêche le flux de révéler si une adresse email ou un numéro de téléphone existent via des réponses d'erreur différentes.

Redirections sociales et SSO dans les navigateurs intégrés

Fiabilité améliorée des redirections sociales et SSO dans les navigateurs intégrés comme Instagram, Facebook et LINE.

Certains navigateurs intégrés ouvrent les pages des fournisseurs d'identité OAuth dans une nouvelle WebView, ce qui peut entraîner la perte de sessionStorage après la redirection.

Cette version ajoute une solution de repli via localStorage :

  • L'état de redirection reste stocké dans sessionStorage.
  • Un contexte de redirection de secours est aussi stocké dans localStorage.
  • Au retour, Logto restaure l'état à partir de localStorage si sessionStorage est manquant.
  • Les entrées de secours sont consommées à la lecture et automatiquement supprimées après 10 minutes.
  • Si les deux espaces de stockage sont vides, l'utilisateur voit un toast d'erreur.

Requête de code de vérification - transmission de l'IP

Correction d'un problème où l'IP de la requête n'était pas transmise aux connecteurs lors de l'envoi des codes de vérification.

Cela permet aux connecteurs de recevoir le bon contexte de requête pour la livraison du code de vérification.