Diagrammes de séquence

Ces page présente les diagrammes de séquence d'une cinématique de connexion et de déconnexion de FranceConnect et de FranceConnect+.

Diagramme de séquence simplifié

Ce diagramme de séquence présente de manière simplifiée les interactions entre l'usager, FranceConnect / FranceConnect+ et le fournisseur de service. Il est valable aussi bien pour FranceConnect que pour FranceConnect+. il omet volontairement les mécanismes de récupération des informations de configuration, de signature et de chiffrement.

Diagramme de séquence FranceConnect

Ce diagramme de séquence présente de manière détaillée les interactions entre l'usager, FranceConnect et le fournisseur de service. Il n'est valable que pour FranceConnect et détaille les mécanismes suivants:

  • Récupération des données de configuration via la discovery url ;
  • Récupération des clés publiques de signature de FranceConnect ;
  • Vérification de la signature des jetons par le fournisseur de service ;

Diagramme de séquence FranceConnect+

Ce diagramme de séquence présente de manière détaillée les interaction entre l'usager, FranceConnect+ et le fournisseur de service. Il n'est valable que pour FranceConnect+ et détaille les mécanismes suivants:

  • récupération des données de configuration via la discovery url
  • récupération des clés publiques de signature de FranceConnect+
  • récupération des clés publique de chiffrement du fournisseur de service
  • déchiffrement des jetons par le fournisseur de service
  • vérification de la signature des jetons par le fournisseur de service

Précisions sur la récupération des informations #

Récupération de la configuration de FranceConnect / FranceConnect+ #

La récupération des métadonnées FranceConnect ou de FranceConnect+ est optionnelle mais permet de récupérer dynamiquement l'ensemble de la configuration, des urls exposant les clés de signature et les algorithmes utilisés. Il est toujours possible d'indiquer manuellement la configuration de FranceConnect ou de FranceConnect+ en s'assurant régulièrement que cette configuration n'a pas évolué. Il est fortement recommandé d'utiliser la récupération dynamique des métadonnées.

La récupération des métadonnées via la discovery url n'est pas obligatoire à chaque connexion mais doit se faire régulièrement. Celles-ci pouvant évoluer, il est nécessaire que le fournisseur de service s'assure d'avoir les bonnes données.

Récupération des clés publiques de signature #

Le fournisseur de service n'est pas obligé de récupérer à chaque appel les clés publiques de signature de FranceConnect / FranceConnect+. Ces dernières changeant régulièrement, le fournisseur de service doit donc régulièrement les redemander pour s'assurer d'avoir toujours les clés publiques de signature valides.

Récupération de l'identité pivot lors de la cinématique de connexion #

La récupération de l'identité pivot (UserInfo) doit être effectuée immédiatement après les appels précédents (authentification et récupération du code). La durée de validité d'un access_token est de 30 secondes.

Il n'est pas possible d'appeler des ressources nécessitant l'access_token en dehors de ce délai.

Diagramme de séquence simplifié #

Ce diagramme de séquence présente de manière simplifié les interactions entre l'usager, FranceConnect / FranceConnect+ et le fournisseur de service. Il ne détaille pas :

  • l'utilisation de la discovery url pour récupérer les données de configuration
  • la récupération des clés publiques de FranceConnect / FranceConnect+ et de celles du fournisseur service
  • le déchiffrement de jetons JWT et la vérification des signatures

Ces informations sont cependant disponibles dans les diagrammes de séquences détaillés de FranceConnect et FranceConnect+.

sequenceDiagram
   autonumber

   participant U as Utilisateur
   participant FC as FranceConnect
   participant FS as Fournisseur de Service

   Note right of U : L'utilisateur clique <br/>sur le bouton <br/>"FranceConnect"

   U->>+FC: GET / POST <FC_URL>/api/v2/authorize
   FC-->>-U: Redirect 302 <FS_URL>/<POST_LOGIN_REDIRECT_URI>

   U->>+FS: GET <FS_URL>/<POST_LOGIN_REDIRECT_URI>
   FS->>+FC: POST <FC_URL>/api/v2/token
   FC-->>-FS: HTTP Response 200

   FS->>+FC: GET <FC_URL>/api/v2/userinfo
   FC-->>-FS: HTTP Response 200

   FS-->>-U: Redirect 302 <FS_URL>/page_authentifiée


   note right of U: Plus tard, <br /> l'utilisateur se <br/> déconnecte

   U->>+FS: GET / POST ...
   FS-->>-U: Redirect 302 <FC_URL>/api/v2/session/end

   U->>+FC: GET <FC_URL>/api/v2/session/end
   FC-->>-U: Redirect 302 <FS_URL>/<POST_LOGOUT_REDIRECT_URI>

   U->>FS: GET <FS_URL>/<POST_LOGOUT_REDIRECT_URI>

  1. Suite au clique de l'usager sur le bouton FranceConnect, l'usager est rediriger vers FranceConnect sur l'url /authorize
  2. Après s'être authenfié, FranceConnect redirige l'usager vers le fournisseur de service
  3. L'usager retourne vers la post login redirect uri du fournisseur de service
  4. Le fournisseur de service appel FranceConnect pour récupérer l'ID Token
  5. FranceConnect retourne l'ID Token
  6. Le fournisseur de service demande à FranceConnect le /UserInfo
  7. FranceConnect retourne le UserInfo
  8. Le fournisseur de service retourne la page demandé à l'usager et est authentifié
  9. Plus tard, l'usager se déconnecte du fournisseur de service
  10. Le fournisseur de service redirige l'usager vers la page de deconnexion de FranceConnect
  11. L'usager demande la page de déconnexion de FranceConnect
  12. Une fois déconnecté de son fournisseur d'identité et de FranceConnect, FranceConnect redirige l'usager vers la post_logout_redirect_uri
  13. L'usager est redirigé vers la post_logout_redirect_uri du fournisseur de service

Diagramme de séquence FranceConnect #

sequenceDiagram
   autonumber

   participant U as Utilisateur
   participant FC as FranceConnect
   participant FS as Fournisseur de Service

   Note right of U : L'utilisateur clique <br/>sur le bouton <br/>"FranceConnect"

   opt Récupération des metadatas
      FS->>+FC: GET <FC_URL>/.well-known/openid-configuration
      FC-->>-FS: HTTP 200
      Note left of FS : FS récupère les <br/>métadatas de FC
   end


   U->>+FC: GET / POST <FC_URL>/api/v2/authorize
   FC-->>-U: Redirect 302 <FS_URL>/<POST_LOGIN_REDIRECT_URI>

   U->>+FS: GET <FS_URL>/<POST_LOGIN_REDIRECT_URI>

   FS->>+FC: POST <FC_URL>/api/v2/token
   FC-->>-FS: HTTP Response 200
   opt récupération des clés publiques de FC
      FS->>+FC: GET <FC_URL>/api/v2/jwks
      FC-->>-FS: HTTP Response 200 - Clés de signature
   end
   FS->>FS: Vérification de la signature


   FS->>+FC: GET <FC_URL>/api/v2/userinfo
   FC-->>-FS: HTTP Response 200
   opt récupération des clés publiques de FC+
      FS->>+FC: GET <FC_URL>/api/v2/jwks
      FC-->>-FS: HTTP Response 200 - FC+ public keys
   end
   FS->>FS: Vérification de la signature



   FS-->>-U: Redirect 302 <FS_URL>/page_authentifiée


   note right of U: Plus tard, <br /> l'utilisateur se <br/> déconnecte

   U ->> FS: GET / POST ...
   FS-->>U: Redirect 302 <FC_URL>/api/v2/session/end

   U->>FC: GET <FC_URL>/api/v2/session/end
   FC-->>U: Redirect 302 <FS_URL>/<POST_LOGOUT_REDIRECT_URI>

   U-->FS: GET <FS_URL>/<POST_LOGOUT_REDIRECT_URI>

  1. En amont de la cinématique, le fournisseur de service récupère la configuration de FranceConnect via la discovery urlFranceConnect
  2. FranceConnect retourne sa configuration
  3. Suite au clique de l'usager sur le bouton FranceConnect, l'usager est rediriger vers FranceConnect sur l'url /authorize
  4. Après s'être authenfié, FranceConnect redirige l'usager vers le fournisseur de service
  5. L'usager retourne vers la post login redirect uri du fournisseur de service
  6. Le fournisseur de service appel FranceConnect pour récupérer l'ID Token
  7. FranceConnect retourne l'ID Token signé
  8. Le fournisseur de service demande à FranceConnect ses clés publiques de signature
  9. FranceConnect retourne ses clés publiques de signature
  10. Le fournisseur de service vérifie la signature de l'ID Token
  11. Le fournisseur de service demande à FranceConnect le /UserInfo
  12. FranceConnect retourne le UserInfo signé
  13. Le fournisseur de service demande à FranceConnect ses clés publiques de signature
  14. FranceConnect retourne ses clés publiques de signature
  15. Le fournisseur de service vérifie la signature du UserInfo
  16. Le fournisseur de service retourne la page demandé à l'usager et est authentifié
  17. Plus tard, l'usager se déconnecte du fournisseur de service
  18. Le fournisseur de service redirige l'usager vers la page de deconnexion de FranceConnect
  19. L'usager demande la page de déconnexion de FranceConnect
  20. Une fois déconnecté de son fournisseur d'identité et de FranceConnect, FranceConnect redirige l'usager vers la post_logout_redirect_uri
  21. L'usager est redirigé vers la post_logout_redirect_uri du fournisseur de service

Diagramme de séquence de FranceConnect+ #

sequenceDiagram
   autonumber

   participant U as Utilisateur
   participant FC as FranceConnect+
   participant FS as Fournisseur de Service

   Note right of U : L'utilisateur clique <br/>sur le bouton <br/>"FranceConnect+"
   opt Récupération des metadatas
      FS->>+FC: GET <FC_URL>/.well-known/openid-configuration
      FC-->>-FS: HTTP 200
      Note left of FS : FS récupère les <br/>métadatas de FC+
   end

   U->>+FC: GET / POST <FC_URL>/api/v2/authorize
   FC-->>-U: Redirect 302 <FS_URL>/<POST_LOGIN_REDIRECT_URI>

   U->>+FS: GET <FS_URL>/<POST_LOGIN_REDIRECT_URI>

   FS->>+FC: POST <FC_URL>/api/v2/token
   FC->>+FS: GET <FS public keys>
   FS-->>-FC: HTTP Response 200 - FS public keys
   FC-->>-FS: HTTP Response 200
   FS->>FS: Déchiffrement Id Token

   opt récupération des clés publiques de FC+
      FS->>+FC: GET <FC_URL>/api/v2/jwks
      FC-->>-FS: HTTP Response 200 - FC+ public keys
   end
   FS->>FS: Vérification de la signature

   FS->>+FC: GET <FC_URL>/api/v2/userinfo
   opt récupération des clés publics du FS
      FC-->>+FS: HTTP Response 200 - FS public keys
      FS-->>-FC: HTTP Response 200
   end
   FC-->>-FS: HTTP Response 200

   FS->>FS: Déchiffrement UserInfo

   opt récupération des clés publiques de FC+
      FS->>+FC: GET <FC_URL>/api/v2/jwks
      FC-->>-FS: HTTP Response 200 - FC+ public keys
   end
   FS->>FS: Vérification de la signature


   FS-->>-U: Redirect 302 <FS_URL>/page_authentifiée


   note right of U: Plus tard, <br /> l'utilisateur se <br/> déconnecte

   U ->> FS: GET / POST ...
   FS-->>U: Redirect 302 <FC_URL>/api/v2/session/end

   U->>FC: GET <FC_URL>/api/v2/session/end
   FC-->>U: Redirect 302 <FS_URL>/<POST_LOGOUT_REDIRECT_URI>

   U-->>FS: GET <FS_URL>/<POST_LOGOUT_REDIRECT_URI>

  1. En amont de la cinématique, le fournisseur de service récupère la configuration de FranceConnect+ via la discovery url
  2. FranceConnect+ retourne sa configuration
  3. Suite au clique de l'usager sur le bouton FranceConnect+, l'usager est rediriger vers FranceConnect sur l'url /authorize
  4. Après s'être authenfié, FranceConnect+ redirige l'usager vers le fournisseur de service
  5. L'usager retourne vers la post login redirect uri du fournisseur de service
  6. Le fournisseur de service appel FranceConnect+ pour récupérer l'ID Token
  7. FranceConnect+ demande au fournisseur de service ses clés publiques de chiffrement
  8. Le fournisseur de service retourne ses clés publiques de chiffrement
  9. FranceConnect+ retourne l'ID Token chiffré et signé
  10. Le fournisseur de service déchiffre l'ID Token
  11. Le fournisseur de service demande à FranceConnect+ ses clés publiques de signature
  12. FranceConnect+ retourne ses clés publiques de signature
  13. Le fournisseur de service vérifie la signature de l'ID Token
  14. Le fournisseur de service demande à FranceConnect+ le /UserInfo
  15. FranceConnect+ demande au fournisseur de service ses clés publiques de chiffrement
  16. Le fournisseur de service retourne ses clés publiques de chiffrement
  17. FranceConnect+ retourne le UserInfo chiffré et signé
  18. Le fournisseur de service déchiffre le UserInfo
  19. Le fournisseur de service demande à FranceConnect+ ses clés publiques de signature
  20. FranceConnect+ retourne ses clés publiques de signature
  21. Le fournisseur de service vérifie la signature du UserInfo
  22. Le fournisseur de service retourne la page demandé à l'usager et est authentifié
  23. Plus tard, l'usager se déconnecte du fournisseur de service
  24. Le fournisseur de service redirige l'usager vers la page de deconnexion de FranceConnect+
  25. L'usager demande la page de déconnexion de FranceConnect+
  26. Une fois déconnecté de son fournisseur d'identité et de FranceConnect+, FranceConnect+ redirige l'usager vers la post_logout_redirect_uri
  27. L'usager est redirigé vers la post_logout_redirect_uri du fournisseur de service
Paramètres d'affichage
Choississez un thème