SmarMaker - Documentation
Docs» smartauth:start

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
smartauth:start [2025/09/17 13:17] – caprelsmartauth:start [Date inconnue] (Version actuelle) – supprimée - modification externe (Date inconnue) 127.0.0.1
Ligne 1: Ligne 1:
-# 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 nous satisfait pas : par exemple si vous voulez développer une application mobile qui ne devrait avoir accès qu'à l'agenda de l'utilisateur et rien d'autre ça n'est pas vraiment possible en l'état actuel: si vous utilisez la clé d'API native de dolibarr liée à l'utilisateur l'application pourra également accéder aux factures et autres éléments auxquels l'utilisateur a accès. 
- 
-C'est particulièrement problématique d'un point de vue du cloisonnement des accès. 
- 
-La "solution" (contournement) classique 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 techniques. 
- 
-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 (pour éviter le "vol" de clé). 
- 
-C'est ce que vous pouvez observer lorsque vous utilisez des applications comme NextCloud : lorsque votre smartphone créé le 1er lien vers votre serveur NextCloud une clé d'API spécifique est générée. Ainsi si vous vous faites voler votre smartphone vous pourrez supprimer uniquement cette clé et en générer une nouvelle pour votre nouveau smartphone. 
- 
-{{.:pasted:20250903-082553.png?direct}} 
- 
-Vous aurez également accès aux journaux de connexion qui vous permettront de détecter des actions incorrectes et/ou de gérer les accès 
- 
-{{.:pasted:20250903-082923.png?direct}} 
- 
-Avec l'implémentation actuelle de dolibarr si votre clé est compromise par le vol de votre smartphone vous devrez reconfigurer TOUS les périphériques sur lesquels vous avez configuré votre clé pour en mettre une nouvelle ! 
- 
-Le dépôt de smartAuth est ici https://inligit.fr/cap-rel/dolibarr/plugin-smartauth/ et ne vous arrêtez pas à [la doc](https://inligit.fr/cap-rel/dolibarr/plugin-smartauth/-/wikis/home) qui n'est pas forcément à jour. 
Made with ❤ by CAP-REL · SmartMaker · GNU AGPL v3+
Code source · Faire un don
SmarMaker - Documentation

Table of Contents

  • SmartAuth
  • SmartMaker - Back (PHP)
    • Mapping Dolibarr - React
  • SmartMaker - Front (React)
    • Animations de pages
    • Architecture
    • Astuces
    • Calendar
    • Composants et pages
    • Configuration du Provider
    • Debug et Logs
    • Hooks SmartCommon
    • PWA (Progressive Web App)
    • Requêtes API
    • Routage
    • SmartCommon
    • Stockage de données
    • Synchronisation offline
    • Thèmes
    • Traductions
  • HowTo - Pas à pas - Votre première application
    • Développement PHP (back)
    • Développement React (front)
    • Première étape : Module Builder Dolibarr
    • SmartAuth
    • SmartBoot : Un squelette prêt à l'emploi
  • Formation SmartMaker
    • Module 1 : Fondamentaux JavaScript ES6+
      • Chapitre 1 : Variables et Scope
      • Chapitre 2 : Fonctions
      • Chapitre 3 : Programmation Asynchrone
      • Chapitre 4 : Modules ES6
    • Module 2 : Introduction à React
      • Chapitre 1 : Philosophie React
      • Chapitre 2 : JSX
      • Chapitre 3 : Composants
    • Module 3 : Hooks React Fondamentaux
      • Chapitre 1 : useState
      • Chapitre 2 : useEffect
      • Chapitre 3 : useRef
      • Chapitre 4 : useContext
    • Module 4 : React Avancé
      • Chapitre 1 : useCallback et useMemo
      • Chapitre 2 : Custom Hooks
      • Chapitre 3 : Redux et Redux Toolkit
    • Module 5 : Architecture SmartMaker
      • Chapitre 1 : Structure du projet
      • Chapitre 2 : Configuration
      • Chapitre 3 : Flux de données
    • Module 6 : SmartCommon - Composants
      • Chapitre 1 : Mise en page
      • Chapitre 2 : Navigation
      • Chapitre 3 : Formulaires
      • Chapitre 4 : Affichage
    • Module 7 : SmartCommon - Hooks
      • Chapitre 1 : useApi
      • Chapitre 2 : Gestion d'état
      • Chapitre 3 : Hooks utilitaires
      • Chapitre 4 : Synchronisation Offline
    • Module 8 : Backend API (PHP)
      • Chapitre 1 : Routage
      • Chapitre 2 : Controllers
      • Chapitre 3 : Mappers
      • Extrafields et formulaires dynamiques
    • Module 9 : Intégration complète
      • Chapitre 1 : Backend
      • Chapitre 2 : Frontend
      • Chapitre 3 : Déploiement
    • Module 10 : Fonctionnalités avancées
      • Chapitre 1 : Mode offline
      • Chapitre 2 : Internationalisation (i18n)
      • Chapitre 3 : Autres fonctionnalités
    • Module 11 : Bonnes pratiques
  • Démonstration
  • Start
  • Composants et pages