Mises à jour du produit Logto
Logto v1.41.0 apporte un contrôle d'accès au niveau de l'application, des politiques d'expiration de mot de passe, des améliorations majeures du Centre de compte, des règles configurables pour les noms d'utilisateur et les codes de vérification, une livraison de messages plus sécurisée et un renforcement global des protocoles et de la sécurité.
Logto v1.41.0 est une version axée sur le contrôle et la sécurité. Elle offre aux équipes des moyens plus fins de décider qui peut accéder à chaque application, un contrôle plus complet du cycle de vie des mots de passe et un Centre de compte beaucoup plus performant pour les utilisateurs finaux. Elle renforce également la livraison des codes de vérification, les règles sur les noms d'utilisateur, la gestion SAML/OIDC, la protection contre la relecture des MFA et les parcours de mise à jour en auto-hébergement. Voici les nouveautés.
Contrôle d'accès au niveau de l'application
Vous pouvez désormais restreindre l'accès à une application directement depuis Logto. Les règles d'accès peuvent viser des utilisateurs spécifiques, des rôles d'utilisateur, des organisations ou des rôles d'organisation.
Lorsqu'un utilisateur ne correspond pas aux règles configurées, Logto bloque le flux de connexion ou d'accès à l'application avec une page d'accès refusé au lieu de laisser passer la requête. Cela facilite le déploiement d'applications, l'accès spécifique à certains clients, la protection des outils internes et l'accès à l'échelle d'une organisation, sans devoir gérer la décision complète dans le code de votre application.
Voir la documentation sur le contrôle d'accès au niveau de l'application pour le flux de configuration complet.
Politiques d'expiration des mots de passe
La Console prend désormais en charge l'expiration des mots de passe au niveau du locataire dans Sécurité > Politique de mot de passe.
Les administrateurs peuvent activer l'expiration des mots de passe, configurer la durée de validité (en jours) et forcer l'expiration du mot de passe d'un utilisateur depuis la page de détails de l'utilisateur. Quand un mot de passe expire, l'utilisateur doit le réinitialiser avec la méthode de récupération configurée avant de pouvoir continuer à se connecter avec un mot de passe.
Les connexions SSO et passkey ne sont pas affectées. Les utilisateurs existants sans date d'expiration enregistrée sont gérés proprement : Logto les ancre à la date d'activation de la politique, afin qu'ils bénéficient de la période de validité complète au lieu d'une expiration immédiate.
Le Centre de compte s'enrichit de contrôles en libre-service
Le Centre de compte continue de s'étoffer pour devenir une vraie interface d'identité en libre-service pour les utilisateurs finaux.
Cette version ajoute la gestion des sessions, la révision des applications tierces connectées, la gestion du profil, le téléchargement d'avatar, le téléchargement d'avatar lors de l'inscription collect-profile, des contrôles passkey indépendants et une préférence utilisateur pour demander les connexions passkey.
La page de profil du Centre de compte, les champs de profil personnalisés à l'inscription et les endpoints de téléchargement d'avatar sortent aussi des feature gates de dev.
Quelques correctifs importants sont également intégrés ici :
- Les thèmes, plateformes et couleurs de marque sont appliqués avant l'initialisation de l'interface pour réduire les clignotements visuels.
- La vérification à risque accru (Step-up) est limitée aux enregistrements de vérification de permission utilisateur.
- Les identités sociales peuvent être liées sans vérification du mot de passe, de l'email ou du téléphone si l'utilisateur ne dispose pas de méthodes de vérification héritées.
- L'édition du nom d'utilisateur dans la Console redirige maintenant vers le Centre de compte pour permettre la vérification nécessaire.
Politiques sur les noms d'utilisateur et les codes de vérification
Les règles sur les noms d'utilisateur sont désormais configurables au niveau du locataire depuis Console > Expérience de connexion > Inscription et connexion > Options avancées.
La politique couvre la sensibilité à la casse, les limites de longueur et les types de caractères autorisés. Elle s’applique à l’écriture de noms d’utilisateur côté utilisateur final, y compris lors de l'inscription, de la complétion du profil, dans le Centre de compte, via l’API de compte et /me.
Le passage en mode insensible à la casse est contrôlé : Logto vérifie l'existence de noms d'utilisateur qui ne diffèrent que par la casse et bloque la modification de la politique jusqu'à résolution des conflits. L'attribut OIDC preferred_username reprend maintenant aussi le username si profile.preferredUsername n'est pas défini.
Les contrôles sur les codes de vérification sont également déplacés dans la sécurité de la Console. Les administrateurs peuvent configurer la durée d’expiration des codes et le nombre maximal de tentatives autorisées.
Livraison des messages plus sûre
Logto applique maintenant une limite de taux d'envoi par destinataire, au niveau du système, pour les envois d'email/SMS de vérification et d'invitation (Experience, MFA, API de Compte, API de Gestion, /me, invitations organisationnelles et l'ancienne interaction API).
Quand un envoi est limité, Logto émet un événement webhook Message.RateLimited, qui est désormais sélectionnable dans les paramètres de webhooks de la Console.
La livraison de codes de vérification à des destinataires inconnus est également bloquée lorsque l'inscription est désactivée, ce qui réduit les risques d'énumération de comptes.
Personnalisation du JWT et améliorations API
Pour les tokens d'accès API de ressource organisationnelle, le personnalisateur JWT d'accès reçoit maintenant context.organization avec les informations de l'organisation visée (id, name, description, customData).
Cela facilite l'ajout de revendications par organisation sans devoir embarquer tous les mappages d'organisations dans chaque token.
Quelques améliorations API sont également incluses :
POST /api/applications/:applicationId/rolesest maintenant idempotent. Les IDs de rôles déjà existants sont ignorés plutôt que de renvoyer422 application.role_exists.- L'endpoint retourne désormais
201avec{ roleIds, addedRoleIds }, alignant la forme de retour sur l’API d’affectation de rôles utilisateur. - La création de rôle organisationnel avec des scopes initiaux est maintenant transactionnelle, donc des IDs de scope invalides ne laissent plus de rôles partiellement créés.
Renforcement de la sécurité et des protocoles
Cette version regroupe un ensemble ciblé de correctifs de protocole et de sécurité :
- Les formulaires de soumission automatique SAML IdP échappent désormais les attributs HTML et rejettent les URLs d'action hors HTTP(S).
samlifyest mis à jour en^2.13.0pour améliorer l'échappement XML dans les assertions SAML générées.- Les vérifications MFA TOTP refusent les codes rejoués provenant du même compteur de pas de temps ou d'un plus ancien.
- Les corps de requêtes OIDC contenant des octets nuls renvoient maintenant
400 invalid_request. - Les payloads de logs d’audit suppriment les octets nuls avant insertion.
- Les vérifications de blacklist sur les sous-adresses email n'utilisent plus d'expressions régulières issues de l'entrée utilisateur.
- Logto Tunnel empêche les requêtes de fichiers statiques d'accéder hors du chemin d'expérience configuré.
Des correctifs de compatibilité et de stockage sont également inclus : Safari ancien et iOS 15 ne plantent plus au démarrage à cause de la syntaxe lookbehind non prise en charge pour les regex, les connecteurs entreprises OIDC peuvent télécharger la configuration de découverte même si le fournisseur refuse la négociation JSON-only, et les échecs de transport d'actifs personnalisés Azure Blob sont désormais mappés sur des erreurs de téléchargement pouvant être réessayées.
Connecteurs nouveaux et améliorés
Cette version ajoute et améliore plusieurs fonctionnalités liées aux connecteurs:
- Nouveau connecteur email SMTP2GO pour envoyer les emails d'authentification transactionnelle via l'API SMTP2GO.
- Prise en charge du connecteur QQ pour la vérification d'identité sociale avec URI de redirection enregistré.
- Mise à niveau du connecteur SAML pour
samlifyet ses types de retour plus stricts. - Le Kit de connecteur exporte désormais des utilitaires de parsing/formatage de boîte mail SMTP mutualisés, aussi utilisés par MailJunky.
Pour les utilisateurs auto-hébergés
Une migration de base de données est nécessaire pour la v1.41.0. Cette version apporte des modifications de schéma pour l’expiration du mot de passe, la politique sur le nom d’utilisateur, la politique sur les codes de vérification, les index sentinelles sur le taux de messages, les paramètres par défaut du Centre de compte, et les index des logs de service.
Après la mise à niveau, exécutez la commande de migration de la base de données avant de lancer la nouvelle version. Consultez le guide de mise à jour pour plus de détails.
La variable d'environnement CASE_SENSITIVE_USERNAME est désormais obsolète. Elle fonctionne toujours en override à l’exécution, mais la sensibilité à la casse doit maintenant se configurer par locataire via la nouvelle politique. Elle sera retirée lors d'une prochaine version majeure.
Se lancer
Prêt à faire la mise à jour ? Consultez le guide de mise à jour pour les instructions étape par étape.
Pour la liste complète des changements, voir la page de release GitHub.
Des questions ou retours ? Rejoins-nous sur Discord ou ouvre un ticket sur GitHub.

