Skip to main content
L’API Web Authentication (aussi appelée WebAuthn) est une spécification rédigée par le W3C et FIDO, avec la participation de Google, Mozilla, Microsoft, Yubico et d’autres. L’API permet d’authentifier les utilisateurs à l’aide de la cryptographie à clé publique.
Le RP ID de WebAuthn est actuellement limité à une configuration à domaine unique et est incompatible avec les clients qui utilisent plusieurs domaines personnalisés.
WebAuthn est la méthode d’authentification la plus sécuritaire et la plus simple à utiliser sur le web. Voici quelques raisons principales :
  • Elle réduit au minimum la friction lors de la connexion. Un geste simple et familier permet aux utilisateurs de s’authentifier.
  • C’est la seule méthode d’authentification web qui résiste à l’hameçonnage.
  • Elle repose sur une norme et est prise en charge par les navigateurs et les systèmes d’exploitation
WebAuthn permet aux utilisateurs de s’authentifier avec deux types d’authentificateurs :
  • Les authentificateurs itinérants sont amovibles et multiplateformes, comme une YubiKey, et peuvent être utilisés sur plusieurs appareils. Pour s’authentifier avec un authentificateur itinérant, vous devez le connecter à l’appareil (par USB, NFC ou Bluetooth), fournir une preuve de présence (en le touchant, par exemple) et, au besoin, effectuer une vérification de l’utilisateur, par exemple en entrant un NIP.
  • Les authentificateurs de plateforme sont associés à un appareil et fonctionnent uniquement sur cet appareil. Par exemple, la Touch Bar du MacBook, Windows Hello, Touch ID/Face ID sur iOS, ainsi que la reconnaissance faciale ou d’empreinte sur Android. Les données biométriques sont stockées sur l’appareil et ne sont jamais envoyées au serveur. Lorsque la biométrie ne peut pas être utilisée, d’autres méthodes d’authentification sont généralement offertes. Par exemple, si vous portez un masque, au lieu d’utiliser Face ID, vous pouvez entrer votre code d’accès.

WebAuthn et les origines Web

WebAuthn fonctionne en générant une paire de clés privée/publique pour chaque origine Web, enregistrée dans l’appareil ou la clé de sécurité. Comme la paire de clés est liée au domaine, les utilisateurs sont protégés contre les tentatives d’hameçonnage. Si un attaquant les incite à utiliser WebAuthn dans un autre domaine, l’authentificateur WebAuthn n’aura pas de paire de clés pour ce domaine et l’authentification échouera. L’attaquant n’obtiendra aucune donnée permettant d’identifier l’utilisateur.

Authentificateurs itinérants

Pour savoir comment activer les authentificateurs itinérants dans Auth0, consultez la documentation WebAuthn with clés de sécurité. Le flux d’enrôlement par défaut des clés de sécurité sur Android, illustré ci-dessous, comporte les étapes suivantes :
  • Les utilisateurs s’authentifient avec leur nom d’utilisateur et leur mot de passe.
  • On leur demande de sélectionner la méthode d’authentification qu’ils souhaitent enrôler.
  • S’ils choisissent les clés de sécurité, une liste d’instructions leur est présentée.
  • On leur demande ensuite d’insérer leur clé de sécurité.
  • L’appareil affiche ensuite son interface utilisateur native pour terminer le défi par clé de sécurité.
  • Les utilisateurs peuvent donner un nom à la clé afin de pouvoir l’identifier plus tard, au cas où ils en enrôleraient plusieurs.
undefined
Dans le flux de défi, on demande à l’utilisateur d’utiliser sa clé de sécurité, puis l’interface utilisateur native de l’appareil s’ouvre, qui dans cet exemple est Android :
undefined

Authentificateurs de plateforme

Pour savoir comment activer les authentificateurs de plateforme, consultez la documentation WebAuthn avec biométrie de l’appareil. Comme les authentificateurs de plateforme ne peuvent être utilisés que sur un seul appareil, ils ne devraient pas être les seuls facteurs auxquels les utilisateurs s’enrôlent. Pour éviter que les utilisateurs perdent l’accès à leur compte, Auth0 les invitera à enrôler des authentificateurs de plateforme après s’être authentifiés avec succès à l’aide d’une autre méthode d’authentification. Auth0 essaiera d’enrôler progressivement les appareils de tous les utilisateurs. Les utilisateurs seront invités à enrôler les authentificateurs de plateforme sur chaque appareil qu’ils utilisent. Le flux d’enrôlement par défaut pour Face ID sur iOS est présenté ci-dessous et comprend les étapes suivantes :
  • Les utilisateurs s’authentifient avec leur nom d’utilisateur et leur mot de passe.
  • Ils enrôlent une autre méthode d’authentification , comme SMS, Push ou OTP temporel.
  • Ils donnent un nom à leur appareil pour pouvoir l’identifier plus tard.
Enrôlement AMF avec biométrie de l’appareil
La prochaine fois qu’ils se connectent à partir de cet appareil, les utilisateurs saisissent leur nom d’utilisateur et leur mot de passe, puis terminent l’authentification AMF avec l’authentificateur biométrique de leur appareil.
Défi AMF WebAuthn avec biométrie de l’appareil

WebAuthn comme authentification multifacteur

Lorsque les utilisateurs s’authentifient avec WebAuthn, ils utilisent quelque chose qu’ils possèdent comme facteur d’authentification : une clé de sécurité ou un appareil.Les clés de sécurité et la biométrie de l’appareil prennent toutes deux en charge la vérification de l’utilisateur, qui exige que les utilisateurs fournissent quelque chose qu’ils connaissent (un NIP ou un code d’accès) et quelque chose qu’ils sont (comme des caractéristiques biométriques).Avec la biométrie de l’appareil, la vérification de l’utilisateur est toujours effectuée. Pour l’effectuer avec des clés de sécurité, vous devez configurer Auth0 de façon à exiger un NIP. Les utilisateurs devront alors saisir un NIP, stocké uniquement dans la clé de sécurité, pour terminer l’authentification. Une fois la vérification de l’utilisateur effectuée, les utilisateurs peuvent se connecter avec WebAuthn comme seule méthode d’authentification et ainsi bénéficier d’une authentification multifacteur.En utilisant WebAuthn pour l’authentification combinée à la vérification de l’utilisateur, vous remplacez non seulement le mot de passe par une solution beaucoup plus simple à utiliser, mais vous éliminez aussi le besoin d’une étape d’authentification supplémentaire lorsque l’authentification multifacteur est requise.

Webauthn.me

Auth0 tient à jour webauthn.me, qui propose des renseignements détaillés sur WebAuthn ainsi qu’une liste à jour des navigateurs compatibles avec WebAuthn.

En savoir plus