Skip to content

Message prêt à envoyer au CTO — intégration SSO

Version courte (5 questions) à copier-coller. Détail technique : voir sso-contract.md.


Objet : Intégration SSO — console centrale → Rapport

Salut,

Pour câbler le login SSO dans Rapport (et ensuite gérer les droits fins de notre côté), j'ai besoin de préciser le contrat avec la console centrale. 5 points :

  1. Protocole — On part sur quoi ? OIDC/OAuth2 (Authorization Code + PKCE), un JWT signé remis directement, ou un cookie de session partagé ?

  2. Contenu du jeton — Qu'est-ce que Rapport reçoit au login, au-delà de l'identité (userId, email) ? Est-ce que le jeton porte aussi l'entreprise, le rôle (admin/user), les établissements autorisés, les modules de l'abonnement et le siège/licence ? (C'est LA question clé : si rôle + établissements + modules sont déjà dans le jeton, je ne les stocke pas côté Rapport ; sinon il faut que je les synchronise.)

  3. Validation — Comment Rapport vérifie le jeton ? Clé publique (JWKS), secret partagé (HMAC), ou endpoint d'introspection ? Durée de vie + mécanisme de refresh ?

  4. Flux — URL de login (redirection vers la console), URL de callback attendue côté Rapport, déconnexion (logout central ?), et les origines à autoriser entre les deux.

  5. Licences/sièges + provisioning — C'est la console qui bloque l'accès si pas de siège attribué, ou Rapport doit le vérifier ? Et comment Rapport liste les utilisateurs d'une entreprise pour leur attribuer des droits (appel API ? ils apparaissent après 1ʳᵉ connexion ?) ?

Dès que j'ai ça, je câble l'auth. En parallèle je prépare le modèle de droits propre à Rapport (restrictions par établissement / domaine / dossier).

Merci !