Nouveautés de la version 2.0.56
La version 2.0.56 est une version de corrections. Après la mise à jour, désactivez puis réactivez le module (voir la dernière section) : la correction des index ne prend effet qu'à la réactivation.
Les applications mobiles restent connectées
Lorsqu'une application mobile renouvelle sa session, SmartAuth vérifie que le jeton présenté n'a pas déjà servi. Jusqu'ici, si la base de données était momentanément indisponible à cet instant, SmartAuth concluait à un vol de jeton et déconnectait l'appareil.
Désormais, une panne de la base renvoie une erreur temporaire : la session est conservée et l'application réessaie d'elle-même. Un jeton réellement réutilisé reste traité comme une attaque.
Activation du module vérifiée
À l'activation, SmartAuth vérifie que chacune de ses tables a bien été créée. Si l'une manque, l'activation est refusée et un message indique les tables en cause, au lieu d'un module activé qui échoue ensuite à la première connexion.
Index complets sous PostgreSQL
Plusieurs tables du module partageaient les mêmes noms d'index. Sous PostgreSQL, seul le premier de chaque nom était créé, et les autres tables restaient sans index sur ces colonnes. Chaque index porte maintenant le nom de sa table. Sous MySQL et MariaDB, les anciens index sont remplacés par les nouveaux lors de la réactivation du module.
Réponses aux mails rattachées au bon dossier
Les mails envoyés par SmartAuth (réinitialisation de mot de passe, inscription, alerte de nouvelle connexion, confirmation d'une adresse alternative) portent l'identifiant de suivi Dolibarr de leur destinataire. Si vous utilisez le collecteur d'e-mails de Dolibarr, une réponse à l'un de ces mails est rattachée à l'utilisateur, à l'adhérent ou au tiers concerné.
Mise à jour
- Remplacez le dossier
smartauthpar celui de l'archive 2.0.56. - Dans Accueil > Configuration > Modules, désactivez puis réactivez SmartAuth. La réactivation crée les index manquants et retire les anciens noms d'index.
- Si la réactivation est refusée, le message liste les tables absentes : vérifiez les droits de l'utilisateur de la base de données, puis réactivez de nouveau.