Nouveautés de la version 2.0.54
La version 2.0.54 fait suite à un audit de sécurité complet du module. Elle rassemble aussi le contenu de la 2.0.52, qui n'a pas été diffusée : la réinitialisation de mot de passe des adhérents décrite plus bas en fait partie.
Après la mise à jour, désactivez puis réactivez le module (voir la dernière section) : plusieurs corrections ne prennent effet qu'à la réactivation.
Qui voit quoi dans l'administration
Le tableau de bord, la liste des jetons, la liste des appareils et les journaux de connexion exigent désormais le droit de lecture SmartAuth. Ils n'affichent plus que les données de l'entité courante.
Sur l'onglet SmartAuth de la fiche utilisateur et dans la liste des jetons, un utilisateur ne peut révoquer, renommer ou supprimer que ses propres jetons. Les opérations sur les jetons des autres utilisateurs sont réservées aux administrateurs. Supprimer un appareil révoque maintenant ses jetons.
Les liens d'action (révocation, suppression, renommage, liens de la page de configuration) sont protégés contre les requêtes forgées : un lien piégé ouvert par un administrateur n'a plus d'effet.
Renommer un jeton fonctionne de nouveau : le nom est enregistré sur l'appareil correspondant.
Mots de passe et sessions
- Une réinitialisation de mot de passe révoque toujours les sessions OAuth2, en plus des jetons des applications mobiles.
- Pour un adhérent qui possède aussi un compte utilisateur, le nouveau mot de passe est écrit sur les deux identités : la connexion à l'application ne refuse plus le mot de passe qui vient d'être choisi.
- Changer son mot de passe depuis la page de compte déconnecte les autres sessions.
- La suppression de son compte par l'utilisateur révoque aussi ses sessions mobiles et anonymise le contact et le tiers associés.
- Les tentatives de connexion SSO sont limitées par adresse et par identifiant.
Connexion unique au back-office Dolibarr
La connexion au back-office Dolibarr par SmartAuth fonctionne désormais :
le retour de l'authentification atteint le module, et la page de connexion
accepte les utilisateurs internes. L'adresse de retour du client OAuth
dolibarr-erp devient <adresse de Dolibarr>/index.php?afteroauthloginreturn=1.
La réactivation du module ajoute cette adresse au client existant.
Si vous avez déclaré un autre client OAuth pour le back-office, ajoutez vous-même cette adresse de retour dans sa fiche. Voir OAuth2 et OpenID Connect.
La page de consentement affiche correctement les adhérents. Une application qui demande une nouvelle authentification ne provoque plus de boucle de connexion.
Synchronisation hors ligne
La synchronisation des applications mobiles applique les mêmes règles de visibilité que l'API : un utilisateur qui ne voit que ses projets ou ses événements n'en récupère pas d'autres par la synchronisation. Les conflits de synchronisation ne conservent plus les champs sensibles, et une modification malformée est signalée pour elle seule au lieu de bloquer tout l'envoi.
Notifications push
Les notifications sont envoyées aux destinataires selon leurs droits d'entité et de groupe. Le journal des envois peut être purgé par un administrateur.
Corrections de bugs
- La liste des applications s'affiche de nouveau sur les bases MySQL.
- La recherche globale des listes de jetons, de journaux et d'appareils fonctionne de nouveau.
- La liste des clients OAuth affiche tous les clients quand aucun filtre de statut n'est choisi.
- La page de déconnexion OAuth affiche de nouveau le message de révocation.
- Plusieurs erreurs fatales sur certains types d'extrafields sont corrigées.
- Les accents français sont restaurés dans les traductions.
Mise à jour
- Remplacez le dossier
smartauthpar celui de l'archive 2.0.54. - Dans Accueil > Configuration > Modules, désactivez puis réactivez
SmartAuth. La réactivation ajoute des index sur les tables de jetons, active
la tâche planifiée de nettoyage et met à jour l'adresse de retour du client
dolibarr-erp. - Vérifiez que les utilisateurs qui consultent le tableau de bord, les jetons ou les journaux disposent bien du droit de lecture SmartAuth. Voir Configuration.