Authentification e-santé en France : le guide complet pour développeurs

17/04/2026
Deux fédérateurs d'identité, trois annuaires, quatre acronymes à mémoriser avant d'écrire la première ligne de code. L'authentification dans le secteur de la santé en France impressionne par sa densité réglementaire. PSC, FC, RPPS, CPS, HDS, ANS, DINUM : les sigles s'accumulent et la documentation est dispersée entre plusieurs portails institutionnels.
Chez Bob le développeur, on construit des applications de santé depuis 2017. Cet article est la carte que nous aurions voulu avoir à l'époque : qui authentifie qui, avec quel protocole, quelles obligations, et par où commencer.
En résumé :
- Les patients s'authentifient via FranceConnect (eIDAS Low)
- Les médecins s'authentifient via Pro Santé Connect (eIDAS Substantial)
- Le numéro RPPS doit être vérifié via l'API Annuaire Santé (FHIR R4)
- Les deux fédérateurs utilisent OpenID Connect (Authorization Code Flow)
- L'hébergement HDS et le logout fédéré sont des obligations légales
La carte de l'authentification e-santé en France
Le système d'authentification e-santé français repose sur une séparation claire entre deux populations d'utilisateurs et deux opérateurs.
Côté patients : FranceConnect
FranceConnect est le fédérateur d'identité de l'État, opéré par la DINUM. Il permet aux citoyens de s'identifier en réutilisant un compte existant (Impôts, Ameli, La Poste, MSA). Le niveau de garantie est eIDAS Low : l'identité est déclarative, suffisante pour la plupart des services numériques.
Pour une app de téléconsultation, FranceConnect identifie le patient. Les données récupérées sont civiles : nom, prénom, date de naissance, email. Pas de données médicales, pas de numéro de sécurité sociale.
Côté professionnels : Pro Santé Connect
Pro Santé Connect (PSC) est le fédérateur sectoriel de la santé, opéré par l'ANS (Agence du Numérique en Santé). Il authentifie les professionnels de santé via la carte CPS physique ou l'application mobile e-CPS. Le niveau de garantie est eIDAS Substantial : l'authentification est forte et vérifiée.
PSC fournit des claims spécifiques au secteur santé : numéro RPPS, rôle professionnel (médecin, pharmacien, infirmier), organisation, spécialité. Depuis janvier 2023, PSC est obligatoire pour tout service numérique en santé.
Le pont entre les deux : l'API Annuaire Santé
L'Annuaire Santé de l'ANS est la base de données nationale des professionnels de santé. Accessible via une API FHIR R4, il permet de vérifier qu'un praticien identifié par PSC est toujours en exercice. C'est le troisième pilier de l'authentification e-santé : identité (PSC) + statut d'exercice (Annuaire) = professionnel vérifié.
FranceConnect vs Pro Santé Connect : le comparatif complet
Les deux reposent sur OpenID Connect, mais divergent sur presque tout le reste.
| Critère | FranceConnect | Pro Santé Connect |
|---|---|---|
| Opérateur | DINUM | ANS |
| Public cible | Citoyens (patients) | Professionnels de santé |
| Niveau eIDAS | Low (eidas1) |
Substantial (garanti par CPS/e-CPS) |
| Protocole | OpenID Connect 1.0 | OpenID Connect 1.0 |
| Moyens d'authentification | Comptes existants (Impôts, Ameli, La Poste...) | Carte CPS physique, e-CPS mobile |
| Scope typique | openid given_name family_name birthdate email |
openid scope_all |
| Identifiant retourné | sub (opaque, par fournisseur de service) |
SubjectNameID (préfixe 8 + RPPS) |
| Vérification post-auth | Non nécessaire | RPPS via API Annuaire Santé |
| Obligation légale | Non (mais recommandé pour les services publics) | Oui, depuis le 1er janvier 2023 |
| Logout fédéré | Obligatoire | Obligatoire |
| Délai habilitation | ~4-5 semaines | Plusieurs semaines (chemin critique) |
| Infrastructure | DINUM (custom) | Keycloak |
| Endpoint logout | /api/v2/session/end |
/protocol/openid-connect/logout |
| mTLS | Non | Optionnel |
| Bouton officiel | Oui, design imposé | Non imposé |
Le point clé : les deux services sont complémentaires, pas concurrents. Une app de téléconsultation intègre les deux, chacun pour son audience.
Pour les détails d'intégration technique :
L'architecture type d'une app de téléconsultation
Comment les pièces s'assemblent dans un backend NestJS (ou tout framework OIDC) :
┌──────────────┐
│ Frontend │
└──────┬───────┘
│
┌────────────┴────────────┐
│ │
┌─────────▼─────────┐ ┌─────────▼─────────┐
│ Bouton │ │ Bouton │
│ FranceConnect │ │ Pro Santé Connect │
│ (patients) │ │ (médecins) │
└─────────┬──────────┘ └─────────┬──────────┘
│ │
┌─────────▼──────────┐ ┌─────────▼──────────┐
│ FC Strategy │ │ PSC Strategy │
│ (Passport OIDC) │ │ (Passport OIDC) │
│ scope: openid... │ │ scope: scope_all │
│ acr: eidas1 │ │ acr: eidas1 │
└─────────┬──────────┘ └─────────┬──────────┘
│ │
│ ┌────────▼────────┐
│ │ Extraire RPPS │
│ │ SubjectNameID │
│ │ préfixe 8 │
│ └────────┬─────────┘
│ │
│ ┌────────▼────────┐
│ │ Vérifier RPPS │
│ │ API Annuaire │
│ │ FHIR R4 │
│ │ active === true │
│ └────────┬─────────┘
│ │
┌─────────▼─────────────────────────▼──────────┐
│ Base de données │
│ ┌──────────────┐ ┌───────────────────┐ │
│ │ Patients │ │ Médecins │ │
│ │ fc_sub (PK) │ │ rpps_number (PK) │ │
│ │ given_name │ │ given_name │ │
│ │ family_name │ │ family_name │ │
│ │ birthdate │ │ profession_code │ │
│ │ email │ │ organization │ │
│ └──────────────┘ └───────────────────┘ │
└───────────────────────────────────────────────┘
Les points clés de cette architecture :
- Deux Passport strategies distinctes dans le même backend, chacune avec ses endpoints (
/auth/fc/*et/auth/psc/*) - Deux tables séparées : patients (identifiés par
fc_sub) et médecins (identifiés parrpps_number) - La vérification RPPS n'intervient que côté médecin, après l'authentification PSC
- Le logout fédéré est implémenté pour les deux providers (obligation contractuelle)
Le numéro RPPS : l'identifiant central du système
Le RPPS (Répertoire Partagé des Professionnels de Santé) est le registre national de tous les professionnels de santé en France. Chaque professionnel reçoit un numéro RPPS unique, attribué à vie par l'Ordre dont il dépend.
Dans l'écosystème e-santé, le numéro RPPS est omniprésent :
- Pro Santé Connect le fournit dans le claim
SubjectNameID(préfixé par8) - L'Annuaire Santé l'utilise comme identifiant de recherche FHIR (
http://rpps.fr|{number}) - Les ordonnances électroniques s'appuient dessus pour identifier le prescripteur
- Le DMP (Dossier Médical Partagé) l'utilise pour les droits d'accès
Pour votre modèle de données, le numéro RPPS est la clé primaire naturelle pour identifier un médecin. Il est stable, national et vérifiable. Ne le confondez pas avec le sub de PSC, qui évolue vers un identifiant technique avec les changements PSI 2026.
Pour le détail du parsing et de la vérification : Vérifier un numéro RPPS avec l'API Annuaire Santé.
e-CPS et carte CPS : ce que le développeur doit savoir
Les professionnels de santé disposent de deux moyens pour s'authentifier via PSC :
La carte CPS est une carte à puce physique délivrée par l'ANS. Elle nécessite un lecteur de carte connecté à l'ordinateur. Historiquement utilisée en cabinet, elle est moins pratique pour la téléconsultation à distance.
L'e-CPS est l'application mobile (iOS/Android) équivalente. Activée par SMS et code d'activation, elle permet une authentification par notification push sur le smartphone. Avec plus de 320 000 utilisateurs actifs, c'est le moyen privilégié pour la téléconsultation.
Du point de vue du développeur, la distinction n'a aucun impact : PSC gère le choix du moyen d'authentification de manière transparente. Les claims retournés sont identiques dans les deux cas. Votre code n'a pas à distinguer CPS de e-CPS.
Le seul impact est en communication : mentionnez l'e-CPS dans votre documentation utilisateur et vos emails d'onboarding. Beaucoup de médecins ignorent encore qu'ils peuvent se passer du lecteur de carte.
Les 5 étapes pour sécuriser l'authentification de votre app santé
1. Lancer le Datapass PSC dès le jour 1
Le processus d'habilitation ANS prend plusieurs semaines. C'est le chemin critique de tout projet e-santé. Ne commencez pas le développement en espérant que l'habilitation suivra : lancez la demande dès le kick-off pour que les délais courent en parallèle.
2. Intégrer les deux fédérateurs en parallèle
FranceConnect (patients) et Pro Santé Connect (médecins) reposent sur le même protocole OIDC. Développez les deux strategies Passport en même temps. Le Datapass FranceConnect est plus rapide (~5 jours ouvrés), vous pouvez commencer les tests côté patient pendant que l'habilitation PSC suit son cours.
3. Implémenter la vérification RPPS dès le début
Ne laissez pas la vérification Annuaire Santé en "v2". C'est un composant de sécurité, pas un nice-to-have. Un service de vérification RPPS se code en une heure et protège votre plateforme contre les praticiens suspendus ou radiés. Le tutoriel complet est ici.
4. Implémenter le logout fédéré pour les deux providers
Le logout redirect est obligatoire pour FranceConnect comme pour PSC. Conservez l'id_token en session dès le login (requis pour FranceConnect), et redirigez vers l'endpoint de logout du provider à la déconnexion. FranceConnect peut révoquer votre habilitation si vous ne le respectez pas.
5. Sécuriser l'hébergement (HDS)
Toutes les données de santé à caractère personnel doivent être hébergées chez un hébergeur certifié HDS. C'est une exigence du dossier Datapass PSC et une obligation légale indépendante. Depuis mai 2026, seuls les hébergeurs certifiés HDS v2 sont autorisés.
Les obligations réglementaires à ne pas oublier
Checklist réglementaire rapide :
- Pro Santé Connect obligatoire depuis le 1er janvier 2023 pour les services numériques en santé (arrêté du 4 avril 2022)
- Hébergement HDS requis pour toute donnée de santé à caractère personnel. Certification HDS v2 obligatoire depuis mai 2026
- Logout fédéré obligatoire pour FranceConnect (contractuel) et PSC
- RGPD renforcé : les données de santé sont des données sensibles au sens de l'article 9 du RGPD. DPO obligatoire, AIPD recommandée
- Bouton officiel FranceConnect : design imposé, texte "S'identifier avec FranceConnect", lien d'information obligatoire
- Vérification RPPS : recommandée par l'ANS à chaque connexion pour confirmer le statut d'exercice
- Ségur du numérique : si votre solution entre dans le périmètre du Ségur, des référentiels d'interopérabilité supplémentaires s'appliquent
Pour un guide détaillé sur la conformité réglementaire complète, consultez notre checklist dédiée (à venir).
FAQ
Peut-on utiliser un seul fédérateur pour patients et médecins ?
Non. FranceConnect authentifie les citoyens, PSC authentifie les professionnels de santé. Les deux ont des niveaux de garantie différents (eIDAS Low vs Substantial) et des claims différents. Un médecin ne peut pas prouver son statut professionnel via FranceConnect, et PSC ne concerne pas les patients.
Faut-il obligatoirement utiliser OpenID Connect ?
PSC et FranceConnect utilisent tous deux OpenID Connect 1.0 (Authorization Code Flow). C'est le seul protocole supporté. Si votre backend utilise déjà une librairie OIDC (Passport, next-auth, Spring Security), l'intégration est directe.
Que se passe-t-il si l'API Annuaire Santé est indisponible ?
Deux approches : le "fail closed" (refuser l'accès) est plus sûr mais bloque les médecins. Le cache de 24h est le bon compromis : si le médecin a été vérifié dans les dernières 24 heures, on le laisse passer même si l'API est temporairement down.
Le sub FranceConnect est-il le même sur tous les services ?
Non. Le sub est unique par couple (utilisateur, fournisseur de service). Un citoyen aura un sub différent sur votre app et sur un autre service. C'est une mesure de protection de la vie privée qui empêche le tracking cross-services.
PSC est-il compatible avec les applications mobiles ?
Oui. Le flow OIDC Authorization Code est standard et fonctionne dans un contexte mobile (webview ou custom tab). L'e-CPS, qui est elle-même une app mobile, s'intègre naturellement dans un parcours d'authentification mobile.
Où trouver la documentation officielle ?
- FranceConnect : docs.partenaires.franceconnect.gouv.fr
- Pro Santé Connect : industriels.esante.gouv.fr
- Annuaire Santé FHIR : ansforge.github.io/annuaire-sante-fhir-documentation
- Habilitations Datapass : datapass.api.gouv.fr
Conclusion
L'authentification e-santé en France repose sur trois briques : FranceConnect pour les patients, Pro Santé Connect pour les médecins, et l'API Annuaire Santé pour la vérification RPPS. Les trois utilisent des standards ouverts (OIDC, FHIR) et se complètent dans une architecture cohérente.
Le principal frein n'est pas technique, c'est administratif. L'habilitation PSC est le chemin critique de tout projet. Lancez-la en premier, développez en parallèle, et vous aurez un socle d'authentification conforme en quelques semaines.
Vous lancez un projet e-santé ? Chez Bob le développeur, on accompagne les startups santé et les établissements de l'architecture au déploiement, hébergement HDS inclus. Parlons de votre projet.
