Chiffrement et Signature avec FranceConnect+

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 :

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-OEAP + 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.

Plus d'information sur le JWK

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

  1. Le fournisseur de service appelle le endpoint /token
  2. FranceConnect+ demande au fournisseur de service sa clé publique de chiffrement
  3. Le fournisseur de service renvoie sa clé de chiffrement
  4. FranceConnect+ renvoie au fournisseur de service l'ID Token chiffré et signé
  5. Le fournisseur de service déchiffre l'ID Token
  6. Le fournisseur de service demande à FranceConnect+ ses clés publiques de signature
  7. FranceConnect+ renvoie ses clés publiques de signature
  8. Le fournisseur de service vérifie que la signature de l'ID Token est valide.

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

  1. Le fournisseur de service appelle le endpoint /userinfo
  2. FranceConnect+ demande au fournisseur de service sa clé publique de chiffrement
  3. Le fournisseur de service renvoie sa clé de chiffrement
  4. FranceConnect+ renvoie au fournisseur de service l'ID Token chiffré et signé
  5. Le fournisseur de service déchiffre la réponse du /userinfo
  6. Le fournisseur de service demande à FranceConnect+ ses clés publiques de signature
  7. FranceConnect+ renvoie ses clés publiques de signature
  8. 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.


Paramètres d'affichage
Choississez un thème