BÊTAAuraPOS est en phase de développement. À ne pas utiliser en production critique.En savoir plus

JWT (JSON Web Token)

Format de token d authentification utilisé par AuraPOS pour la tablette serveur (aurapos-pad) en LAN local.

JWT (JSON Web Token, RFC 7519) est un standard ouvert pour représenter de manière compacte et sécurisée des informations d authentification entre un client et un serveur. Format : `header.payload.signature` encodés en base64url et signés cryptographiquement.

Anatomie d un JWT :

  • **Header** : algorithme de signature (typiquement HS256 ou RS256)
  • **Payload** : claims utilisateur (id, nom, rôle, expiration) en JSON
  • **Signature** : HMAC-SHA256 ou RSA-SHA256 du header + payload avec un secret partagé

AuraPOS utilise JWT pour deux contextes :

1. Tablette serveur HORECA (aurapos-pad)

Après login PIN du serveur, AuraPOS génère un JWT signé HS256 avec serveur_id, nom, roles, exp 12h. Le JWT est stocké dans le local storage de la tablette (chiffré par tauri-plugin-store). Toutes les requêtes API ultérieures portent le JWT dans `Authorization: Bearer xxx`. Le serveur Kestrel AuraPOS vérifie la signature à chaque requête.

2. Sessions web backend (mon.aurapos.be)

Utilise NextAuth v5 avec session cookies sécurisés (httpOnly, sameSite, secure).

Avantages JWT :

  • **Sans état (stateless)** : le serveur n a rien à stocker
  • **Portable** entre services
  • **Facile à inspecter** : tout développeur peut décoder le payload sur jwt.io
  • **Standard universel** : OAuth2 / OpenID Connect utilisent JWT

Inconvénients :

  • **Non-révocable** jusqu à expiration. Mitigation : durée courte (12 h) + re-login quotidien.
  • **Taille** : 200-500 octets, plus lourd qu un cookie de session simple
  • **Secret à protéger** : si le secret HS256 fuite, n importe qui peut forger des JWT valides. Mitigation : rotation périodique, stockage en variable d environnement chiffrée.

AuraPOS gère tout cela automatiquement — vous n avez pas à manipuler les JWT directement.

Termes liés