Passkeys (WebAuthn)
Passkey offre une alternative plus sécurisée et conviviale aux mots de passe traditionnels. En utilisant la cryptographie à clé publique, le passkey améliore la sécurité en liant l'appareil de l'utilisateur, le domaine du service et l'identifiant utilisateur, ce qui permet de contrer efficacement le phishing et les attaques par mot de passe. Compatible avec divers appareils ou navigateurs, il permet aux utilisateurs d'utiliser la biométrie et les fonctionnalités de sécurité matérielle pour une authentification pratique. WebAuthn fournit l’API permettant aux sites web de mettre en œuvre les passkeys.
Logto prend en charge les passkeys (WebAuthn) à la fois pour Authentification multi-facteurs (MFA) et pour connexion par passkey. Le même identifiant WebAuthn sous-jacent peut être réutilisé dans les deux cas, selon la configuration de votre tenant.
Concepts
Les clients connaissent toujours les Passkeys plutôt que WebAuthn, alors quelle est la relation entre eux et comment les utiliser ? Explorons ces concepts :
- Passkeys : Un passkey est un identifiant basé sur FIDO, résistant au phishing, destiné à remplacer les mots de passe. Il utilise la cryptographie asymétrique à clé publique pour une sécurité renforcée. Il peut s'agir de jetons matériels ou de clés de sécurité, comme des appareils USB ou Bluetooth. Puisque "Passkeys" est la méthode d'authentification affichée aux utilisateurs, elle doit être utilisée dans le client de votre produit.
- WebAuthn : Il s'agit d'une API JavaScript développée par le W3C et la FIDO Alliance, qui permet l'authentification des applications web selon les standards FIDO2. Passkeys est l'une des méthodes d'authentification prises en charge par WebAuthn. Dans la Console Logto, nous appelons professionnellement cette intégration "WebAuthn".
WebAuthn propose différents types d'authentificateurs parmi lesquels les utilisateurs peuvent choisir, disponibles en deux types pour une utilisation locale ou cloud :
- Authentificateur de plateforme (Authentificateur interne) : Il est lié à un seul système d'exploitation d'appareil spécifique, comme un ordinateur, un portable, un téléphone ou une tablette, avec lequel l'utilisateur se connecte. Il fonctionne exclusivement sur l'appareil pour l'autorisation en utilisant des méthodes telles que la biométrie ou le code d'accès de l'appareil, ce qui en fait un moyen rapide de s'authentifier. Par exemple, iCloud Keychain vérifié par Touch ID, Face ID ou code d'accès sur macOS ou iOS ; Windows Hello vérifié par reconnaissance faciale, empreinte digitale ou PIN convivial.
- Authentificateur itinérant (Authentificateur externe, Authentificateur multiplateforme) : Il s'agit d'un appareil ou d'une application logicielle distinct(e) et portable, comme une clé de sécurité matérielle ou un smartphone. Il doit être connecté à l'appareil via USB ou en gardant le NFC ou le Bluetooth activé. L'authentificateur itinérant n'est pas limité à un seul appareil ou navigateur, offrant ainsi une plus grande flexibilité.
Pour approfondir les principes et processus de WebAuthn, vous pouvez consulter nos articles de blog : WebAuthn et Passkeys 101 et Ce qu'il faut savoir avant d'intégrer WebAuthn.
Configurer la vérification par passkeys pour la MFA
- Accédez à Console > Authentification multi-facteurs
- Activez le facteur "Passkeys (WebAuthn)". Il est recommandé d'utiliser les Passkeys en combinaison avec d'autres facteurs MFA (TOTP, SMS, codes de secours) pour réduire la dépendance à un seul facteur.
- Configurez votre politique MFA préférée (obligatoire vs. optionnelle)
- Enregistrez vos modifications de configuration
Si le même utilisateur se connecte avec connexion par passkey, Logto sautera l'étape de vérification MFA séparée. Une connexion par passkey satisfait déjà à l'exigence de vérification basée sur WebAuthn.
Il est essentiel de connaître certaines limitations lors de la mise en œuvre de WebAuthn :
- Limitation de la plateforme et du navigateur : Il est important de noter que Logto ne propose actuellement pas de support WebAuthn pour les applications natives. De plus, la disponibilité des authentificateurs WebAuthn dépend des capacités du navigateur et de l'appareil (Voir la liste). Par conséquent, WebAuthn n'est jamais la seule option pour mettre en œuvre l'Authentification multi-facteurs (MFA), sinon, vous pouvez contrôler quels navigateurs et appareils peuvent accéder à votre produit.
- Limitation du domaine : Changer de domaine peut empêcher la vérification de l'utilisateur via ses comptes WebAuthn existants. Les passkeys sont liés au domaine spécifique de la page web actuelle et ne peuvent pas être utilisés sur différents domaines.
- Limitation de l'appareil : Perdre l'appareil peut entraîner une perte d'accès à leurs comptes, en particulier pour ceux qui dépendent des Authentificateurs de plateforme "Cet appareil". Pour améliorer l'accès à l'authentification, il est conseillé de fournir aux utilisateurs plus d'un facteur d'authentification.
Configurer la gestion des passkeys
Vous pouvez utiliser l’Account API pour créer des interfaces de gestion de compte personnalisées où les utilisateurs peuvent ajouter, voir, renommer et supprimer leurs passkeys. Ceci est utile pour créer des centres de compte personnalisés et permettre des scénarios de sauvegarde multi-appareils.
Pour des étapes de mise en œuvre détaillées et les points de terminaison API, voir Paramètres du compte via Account API.
Flux de configuration des passkeys
La spécification Passkeys exige que les utilisateurs cliquent activement sur le bouton de la page en cours pour lancer le composant d'authentification. Cela signifie que, tant dans les flux de configuration que de vérification, les utilisateurs doivent être redirigés vers la page d'accueil pour initier WebAuthn.
Flux de vérification des passkeys
Lorsque les utilisateurs ont configuré plusieurs méthodes MFA, y compris les passkeys, le passkey sera présenté comme la méthode de vérification MFA recommandée sur le premier écran en raison de sa sécurité et de sa commodité accrues. Les utilisateurs peuvent passer à d'autres méthodes de vérification en cliquant sur "Essayer une autre méthode de vérification" ci-dessous. Lisez Configurer la MFA pour en savoir plus.
Si l'utilisateur termine la connexion avec connexion par passkey au lieu de saisir un autre premier facteur, Logto ne demandera pas d'étape MFA supplémentaire par la suite. En effet, le passkey lui-même est considéré comme un facteur MFA WebAuthn.
Ressources associées
Ce qu'il faut savoir avant d'intégrer WebAuthn
WebAuthn et Passkey 101