Aller au contenu

Plateforme mutualisée et prérequis

Évolution en préparation

Cette page décrit une évolution non livrée. État au 2026-10-11, d'après la configuration Keycloak de référence de SenSaaS, les fiches d'intégration du backend et la décision du 2026-10-11 sur le backend mutualisé.

En bref

Toute l'infrastructure de l'authentification est mutualisée et exploitée par SenSaaS : plateforme d'authentification, backend de la webapp, magasin de sessions, API centrale. Un revendeur n'héberge rien et n'administre rien de cette infrastructure. Il reste au site du client un connecteur v2 à jour, qui sait joindre la plateforme d'authentification.

Ce que SenSaaS exploite

Composant Rôle
Plateforme d'authentification (Keycloak), ident.sensaas.fr comptes, connexion, connexion unique, passkeys, double authentification, organisations des revendeurs et des clients
Sa base de données la vraie ressource critique : sauvegardée chaque jour, restauration testée
Plateforme de recette ident.dev.sensaas.fr développement et recette ; jamais de compte de test en production
Backend de la webapp, mutualisé plusieurs instances : connexion, session, relais des appels vers les connecteurs
Magasin de sessions les sessions et le verrou de renouvellement ; jetons chiffrés au repos
API centrale l'annuaire des connecteurs de chaque utilisateur, la gestion des comptes depuis le portail
Portail gestion des organisations et des utilisateurs par les revendeurs

Installation, haute disponibilité, sauvegardes, mises à jour, rotation des secrets et supervision de ces composants sont à la charge de SenSaaS.

Ce que coûte la perte de chaque composant

Magasin de sessions perdu : quelques indisponibilités passagères, puis reprise grâce au journal ; au pire, tout le monde se reconnecte. Aucune donnée métier n'est en jeu.

Plateforme d'authentification perdue : plus de connexion ni de renouvellement ; les sessions en cours sont servies jusqu'à l'expiration du jeton d'accès, soit 15 minutes au plus. Les connexions directes aux connecteurs, elles, continuent de fonctionner.

Ce qui reste au site du client

Prérequis Pourquoi État
un connecteur v2 à jour il valide les jetons de la plateforme, en plus de sa connexion directe livré le 2026-10-02 - voir Migrer un connecteur v1 vers la v2
HTTPS sortant vers ident.sensaas.fr le connecteur télécharge les clés publiques de la plateforme au premier jeton, puis les garde sur disque à vérifier sur le pare-feu du site
des utilisateurs du connecteur avec la même adresse électronique que leur compte SenSaaS l'adresse vérifiée relie l'utilisateur à ses dossiers ; sinon 403 AUTH.UTILISATEUR_INCONNU inchangé : voir Utilisateurs

Aucun autre réglage d'authentification n'est demandé sur le connecteur : l'émetteur, l'audience et les applications autorisées sont fixés dans le connecteur lui-même.

Ce que le connecteur fournit déjà

  • Validation des jetons de la plateforme : signature vérifiée avec ses clés publiques mises en cache, donc aucun appel réseau par requête ; contrôle de l'audience, du type de jeton, de l'application d'origine et du rôle d'accès.
  • Identification de l'utilisateur par son adresse électronique vérifiée.
  • Liste des dossiers accessibles à l'utilisateur connecté, par la route v2 GET /v2/sage/dossiers : voir Sage, infrastructure.
  • Réponses distinctes : jeton absent, invalide ou expiré donne une réponse d'authentification ; utilisateur inconnu ou inactif donne un refus 403, sans boucle de renouvellement.

Le connecteur reste l'unique autorité sur les dossiers : il filtre, il refuse, il expose la liste.

Les flux réseau

De Vers Usage
navigateurs webapp SenSaaS la webapp et ses appels
navigateurs plateforme d'authentification la page de connexion et la connexion unique
backend SenSaaS connecteurs des clients le relais des appels de l'API v2
connecteurs des clients plateforme d'authentification les clés publiques, à faible fréquence

Les autres flux (backend vers plateforme, annuaire, magasin de sessions, déconnexion centralisée) restent internes à l'infrastructure de SenSaaS.

Ce que la webapp change

La webapp ne manipule plus aucun jeton : elle est authentifiée par un cookie de session, et ses appels partent vers la même origine.

  • au démarrage, elle demande qui est connecté ; si personne, elle redirige vers la connexion en mémorisant la page d'origine ;
  • elle affiche un écran de choix du connecteur quand plusieurs sont rattachés ;
  • elle envoie un en-tête d'identification sur toute requête modifiante - sans lui, la requête est refusée ;
  • elle distingue "session finie" (redirection vers la connexion) d'"indisponibilité passagère" (courte nouvelle tentative, sans déconnecter).

Voir aussi

Documentation de SenSaaS v2. Chaque page est écrite à partir du produit livré ; ce qui reste à vérifier y est signalé.