Table des matières

🇫🇷 Français | 🇬🇧 English


Validation des tokens

Objectif

Expliquer comment vérifier les tokens retournés par L’Identité Numérique La Poste.

👉 La validation des tokens est obligatoire pour garantir la sécurité de l’authentification.


Tokens concernés

Les principaux tokens retournés sont :

Token Usage
id_token Preuve d’authentification
access_token Accès aux APIs

⚠️ Le `id_token` doit toujours être vérifié.


Vérifications obligatoires du id_token

Le partenaire doit contrôler les éléments suivants :

Contrôle Description
Signature Vérifier que le token a bien été signé par LINLP
iss Vérifier l’émetteur attendu
aud Vérifier que le token est destiné à votre client
exp Vérifier que le token n’est pas expiré
iat Vérifier la cohérence temporelle
nonce Vérifier si utilisé lors du flow

Vérification de signature

LINLP publie ses clés publiques via le endpoint :

/auth/realms/partenaire/protocol/openid-connect/certs

👉 Format standard : JWKS

Le partenaire doit :


Vérification du issuer

Le champ `iss` doit correspondre à l’environnement utilisé.

Exemple :


Vérification de l’audience

Le champ `aud` doit correspondre à votre :

client_id

👉 Si ce n’est pas le cas, le token doit être rejeté.


Vérification d’expiration

Le champ :

exp

représente la date limite de validité du token.

⚠️ Un token expiré ne doit pas être accepté.


Vérification du nonce

Si un `nonce` a été envoyé lors de `/authorize` :

👉 Le même `nonce` doit être présent dans le token.

Cela protège contre certaines attaques de rejeu.


Exemple de payload

{
  "iss": "https://authent.lidentitenumerique.laposte.fr",
  "aud": "client_abc",
  "sub": "5577832670193",
  "exp": 1712345678,
  "iat": 1712342078
}

Recommandation sur le id_token

⚠️ Le `id_token` peut être conservé comme preuve d’authentification historique.

👉 Son expiration concerne l’usage temps réel, pas sa valeur de preuve.


Validation du access_token

Le `access_token` est utilisé pour appeler :

/userinfo

👉 Le partenaire doit le traiter comme un secret temporaire.


À retenir


Étape suivante

👉 Questions fréquentes :

FAQ