**Ceci est une ancienne révision du document !**
SmartAuth
Nativement Dolibarr propose une API et chaque utilisateur peut disposer d'une seule clé d'API qui donne accès à tout le périmètre fonctionnel auquel l'utilisateur a accès.
Ce fonctionnement ne me satisfait pas : je veux pouvoir développer une application mobile qui via l'API ne devrait avoir accès qu'à l'agenda de l'utilisateur et rien d'autre.
Si je configure la clé d'API native de dolibarr lié à l'utilisateur l'application pourra également accéder aux factures et autres éléments.
C'est particulièrement problématique d'un point de vue du cloisonnement des accès.
La “solution” classique des utilisateurs de dolibarr est de créer un 2° utilisateur ayant moins de droits et de configurer la clé d'API de cet utilisateur sur l'application agenda … mais seulement voilà c'est un autre utilisateur et l'agenda de l'utilisateur 2 n'est pas celui de l'utilisateur 1 … ce qui oblige ensuite à faire des contorsions.
Notre approche avec SmartAuth est de dire qu'un utilisateur peut avoir autant de clés d'API qu'il souhaite, chaque clé ayant des droits et si une clé est liée à une application elle ne devra pas être réutilisée par une autre.
Le dépôt de smartAuth est ici https://inligit.fr/cap-rel/dolibarr/plugin-smartauth/ et ne vous arrêtez pas à la doc elle est loin d'être à jour