Chiffrement et Signature avec FranceConnect+
Signature des jetons par FranceConnect+ Lien direct vers la section Signature des jetons par FranceConnect+
Les jetons sont signés par FranceConnect+ en utilisant ses propres clés de chiffrement, afin de permettre au fournisseur de service de s'assurer que ces deux jetons sont bien émis par FranceConnect+. Le fournisseur de service doit donc vérifier la signature des jetons en ayant pris le soin de récupérer les clés publiques de signature de FranceConnect+.
La signature permet de garantir l'intégrité et l'authenticité des données échangées.
Algorithme de signature de jetons utilisable par FranceConnect+
-
Asymétrique :
- ES256 (EC + SHA256)
Exposition des clés de signature
Les clés publiques de signature de FranceConnect+ sont changées régulièrement et sont disponibles via la JWKS URL présente dans les méta-data de la Discovery URL à l'adresse suivante :
| Environnement | adresses du endpoint |
|---|---|
| intégration | https://auth.integ01.dev-franceconnect.fr/api/v2/jwks |
| production | https://auth.franceconnect.gouv.fr/api/v2/jwks |
Chiffrement des jetons par FranceConnect+ Lien direct vers la section Chiffrement des jetons par FranceConnect+
Les jetons sont chiffrés par FranceConnect+ en utilisant une des clés publiques de chiffrement mises à disposition par le Fournisseur de Service, afin de s'assurer que lui seul puisse consulter les informations présentes dans ces jetons. Le fournisseur de service doit mettre à disposition de FranceConnect+ ses clés publiques de chiffrement.
Le chiffrement permet de garantir la confidentialité des données échangées.
Algorithme de chiffrement des jetons (jwe+jws) :
- Hybride :
- RSA-OAEP-256 + AES256-GCM
- ECDH-ES + AES256-GCM
Exposition des clés de chiffrement
Les clés publiques de chiffrement du fournisseur de service doivent être exposées par lui-même à FranceConnect+, sous la forme d'une URL au format JWK.
Cinématique de récupération de l'IDToken Lien direct vers la section Cinématique de récupération de l'IDToken
sequenceDiagram autonumber participant FS as Fournisseur de Service participant FC as FranceConnect+ FS->>+FC: POST <FC_URL>/api/v2/token FC->>+FS: GET FS public encryption keys FS-->>-FC: HTTP 200 FS public encryption keys FC-->>-FS: HTTP 200 Id Token + Access Token FS->>FS: déchiffrement de l'Id Token FS->>+FC: GET /api/v2/jwks FC-->>-FS: HTTP FC+ public signing keys FS->>FS: validation de la signature de l'Id Token
- Le fournisseur de service appelle le endpoint /token
- FranceConnect+ demande au fournisseur de service sa clé publique de chiffrement
- Le fournisseur de service renvoie sa clé de chiffrement
- FranceConnect+ renvoie au fournisseur de service l'ID Token chiffré et signé
- Le fournisseur de service déchiffre l'ID Token
- Le fournisseur de service demande à FranceConnect+ ses clés publiques de signature
- FranceConnect+ renvoie ses clés publiques de signature
- Le fournisseur de service vérifie que la signature de l'ID Token est valide.
Cinématique de récupération du UserInfo Lien direct vers la section Cinématique de récupération du UserInfo
La cinématique est similaire à celle de la récupération de l'ID Token
sequenceDiagram autonumber participant FS as Fournisseur de Service participant FC as FranceConnect+ FS->>+FC: POST <FC_URL>/api/v2/userinfo FC->>+FS: GET FS public encryption keys FS-->>-FC: HTTP 200 FS public encryption keys FC-->>-FS: HTTP 200 Id Token + Access Token FS->>FS: déchiffrement de l'Id Token FS->>+FC: GET /api/v2/jwks FC-->>-FS: HTTP FC+ public signing keys FS->>FS: validation de la signature de l'Id Token
- Le fournisseur de service appelle le endpoint /userinfo
- FranceConnect+ demande au fournisseur de service sa clé publique de chiffrement
- Le fournisseur de service renvoie sa clé de chiffrement
- FranceConnect+ renvoie au fournisseur de service l'ID Token chiffré et signé
- Le fournisseur de service déchiffre la réponse du /userinfo
- Le fournisseur de service demande à FranceConnect+ ses clés publiques de signature
- FranceConnect+ renvoie ses clés publiques de signature
- Le fournisseur de service vérifie que la signature de la réponse du /userinfo est valide.
Renouvellement des clés de signature
Pour des raisons de sécurité, Les clés de signature de FranceConnect+ sont régulièrement renouvelées. Celles-ci doivent être récupérées régulièrement par le fournisseur de service.