almessadi.
Retour à l'index

WebAuthn améliore l'authentification. Les JWT ne décrivent que la forme de session._

WebAuthn et les JWT sont souvent comparés de manière incorrecte. WebAuthn sécurise la manière dont un utilisateur prouve son identité, tandis que les JWT sont un moyen de transporter l'état de la session par la suite.

Publié18 février 2025
Temps de lecture5 min read

WebAuthn et les JWT sont souvent comparés comme s'ils résolvaient le même problème. Ce n'est pas le cas. WebAuthn concerne la manière dont un utilisateur prouve son identité. Les JWT sont une façon pour un serveur de représenter l'état authentifié après que cette preuve ait réussi.

Cette distinction est importante car elle modifie complètement la conversation architecturale.

Où s'intègre WebAuthn

WebAuthn vous offre une authentification liée à l'origine, résistante au phishing, basée sur des clés publiques. Un flux de navigateur peut commencer comme ceci :

const credential = await navigator.credentials.get({
  publicKey: optionsFromServer,
});

Le point important n'est pas l'appel API. C'est la propriété de sécurité : la référence est liée à l'origine et soutenue par la cryptographie à clé publique.

Où s'intègrent les JWT

Après que l'authentification ait réussi, le serveur doit encore maintenir un modèle de session. Cela pourrait être :

  • un cookie HttpOnly
  • un JWT
  • un identifiant de session opaque

Les JWT concernent le transport de session et la représentation des revendications. Ils ne rendent pas l'authentification résistante au phishing par eux-mêmes.

Cela signifie qu'une architecture robuste peut ressembler à : WebAuthn pour la vérification de l'utilisateur, puis un cookie HttpOnly ou un autre token de session pour l'état continu. Ces couches coopèrent. Elles ne sont pas en compétition.

Meilleure règle

Utilisez WebAuthn pour améliorer la cérémonie de connexion. Choisissez des JWT, des cookies ou des sessions opaques en fonction de la manière dont le reste de la plateforme gère l'état, la révocation et la sécurité du navigateur.

WebAuthn peut renforcer le système, peu importe le format du token de session qui suit.

Lectures complémentaires