Cette page a été traduite automatiquement. Consultez la version originale en anglais ici.
isUserVerifyingPlatformAuthenticatorAvailable() renvoie false sur tous les navigateurs autres que Safari, nécessitant des mises à jour de la logique de détection.N'implémentez pas les clés d'accès.
Du moins, pas à tout prix et pas si vous n'avez pas les ressources pour le faire correctement.
Livre blanc Passkey entreprise. Conseils pratiques, modèles de déploiement et KPIs pour les programmes passkeys.
Oui, les clés d'accès sont la meilleure chose qui soit arrivée à l'authentification grand public au cours de la dernière décennie. Oui, elles éliminent le hameçonnage. Oui, elles peuvent massivement améliorer l'expérience utilisateur (UX). Mais des clés d'accès mal implémentées peuvent aussi causer beaucoup de torts.
L'implémentation d'un serveur WebAuthn n'est pas très complexe. Le véritable défi, c'est tout ce qui l'entoure. L'exploitation efficace des clés d'accès à grande échelle nécessite de l'anticipation. Vous devez penser à tous les problèmes du « jour 2 » : les réalités opérationnelles qui ne font surface qu'une fois que vous avez commencé le déploiement des clés d'accès.
Cet article couvre cinq problèmes du jour 2 qui font systématiquement échouer les projets de clés d'accès. Si vous ne pouvez pas tous les résoudre, vous n'êtes pas prêt à lancer les clés d'accès. Si vous le pouvez, vous construirez une authentification à la fois plus sécurisée et plus utilisable que tout ce que les mots de passe ne pourront jamais offrir.
Articles récents
🔑
Pourquoi la gestion sécurisée des documents est-elle essentielle pour les entreprises modernes ?
♟️
Problèmes du jour 2 des clés d'accès : 5 risques après le lancement
♟️
Pourquoi même votre mot de passe le plus complexe sera bientôt craqué
♟️
Réutilisation des mots de passe au Japon : toujours à 84 % [2026]
♟️
Le rôle de l'IA dans la détection des cybermenaces
En ingénierie, le « jour 1 » correspond au moment où vous construisez et lancez le produit. Le « jour 2 » est celui où vous exploitez, maintenez et faites évoluer ce que vous avez lancé. Pour les clés d'accès, le jour 1 peut être simple :
La plupart des équipes peuvent faire fonctionner une implémentation de base des clés d'accès en quelques jours ou semaines.
Le jour 2 est le moment où les projets échouent. C'est le moment où de vrais utilisateurs, sur de vrais appareils, avec de vrais cas particuliers, interagissent avec votre système de clés d'accès. C'est lorsque vous découvrez que la belle démonstration qui fonctionnait parfaitement sur votre MacBook plante sur un ordinateur portable Windows exécutant Chrome derrière un proxy d'entreprise. C'est lorsque votre équipe de support est inondée de tickets « Je n'arrive plus à me connecter ».
L'écart entre une démonstration fonctionnelle de clés d'accès et un déploiement de clés d'accès de niveau production est énorme. Nous avons déjà abordé les pièges de l'implémentation technique et les raisons stratégiques pour lesquelles les projets de clés d'accès échouent. Cet article se concentre spécifiquement sur ce qui se passe après la mise en production d'un point de vue opérationnel.
Voici les cinq problèmes du jour 2 que nous allons aborder :
Si vous ne concevez pas correctement la récupération et la solution de secours, vous bloquez massivement les utilisateurs ou vous réintroduisez discrètement les mêmes flux vulnérables au hameçonnage que vous vouliez éliminer.
Prenons le cas d'un utilisateur qui enregistre une clé d'accès sur son iPhone, puis qui perd cet iPhone. En général, une grande partie de ces cas de récupération est désormais gérée par le gestionnaire d'identifiants (le plus souvent le trousseau iCloud sur les iPhone). Tant que l'utilisateur a accès à son compte Apple, il dispose de clés d'accès synchronisées pour se connecter sur un nouvel appareil. Mais que se passe-t-il s'il n'a plus accès à ce compte cloud ? C'est à ce moment-là que votre chemin de récupération habituel entre en jeu.
Disons que vous supposez que la clé privée est toujours disponible sur l'appareil à partir duquel l'utilisateur essaie de se connecter, vous démarrez donc la cérémonie de connexion WebAuthn. Cela entraînera l'apparition d'une fenêtre modale du système d'exploitation / navigateur demandant à l'utilisateur de « se connecter avec votre clé d'accès sur un autre appareil ». Fondamentalement, l'utilisateur est maintenant bloqué hors de son compte. Il n'y a aucun autre appareil où la clé d'accès est stockée. L'utilisateur est extrêmement confus. Multipliez cela par des milliers d'utilisateurs et vous avez une crise du support.
La réaction courante consiste à ajouter la réinitialisation de compte par e-mail comme solution de secours. Mais cela va à l'encontre du but des clés d'accès : vous venez de réintroduire un canal de récupération vulnérable au hameçonnage. Un attaquant qui peut compromettre l'e-mail d'un utilisateur peut désormais contourner entièrement votre implémentation de clés d'accès résistante au hameçonnage.
À notre avis, la bonne approche est une récupération à plusieurs niveaux :
En général, vous devez décider quels niveaux de récupération de compte peuvent être justifiés d'un point de vue du coût et des frictions. Par exemple, dans la vente au détail / l'e-commerce, vous pourriez simplement proposer les deux premiers niveaux et accepter le risque de hameçonnage pour des raisons financières. Dans d'autres secteurs, où la sécurité est plus importante, vous passez aux niveaux 3 et 4.
Chaque niveau ajoute de la complexité. Vous devez décider des niveaux requis par votre cas d'usage, les construire, les tester sur toutes les combinaisons d'appareils et surveiller leur utilisation. C'est un travail considérablement plus important que l'intégration WebAuthn initiale.
La plupart des équipes sur-simplifient la récupération (en se rabattant sur les mots de passe ou les OTP par SMS) ou la sur-compliquent (par ex., en exigeant des clés de sécurité matérielles pour chaque récupération). Le bon équilibre dépend de votre modèle de menace, de votre base d'utilisateurs et de vos exigences réglementaires. Se tromper signifie soit affaiblir votre posture de sécurité, soit créer tellement de frictions que les utilisateurs abandonnent le flux.
Igor Gjorgjioski
Head of Digital Channels & Platform Enablement, VicRoads
We hit 80% mobile passkey activation across 5M+ users without replacing our IDP.
See how VicRoads scaled passkeys to 5M+ users — alongside their existing IDP.
Read the case studyVos utilisateurs ne vivent pas dans un monde propre et exclusif à Apple. Ils changent d'appareils, mélangent Windows avec iOS, utilisent différents navigateurs et travaillent sur des configurations gérées par l'entreprise. C'est là que les flux de clés d'accès s'interrompent si vous n'avez pas anticipé.
L'écosystème des clés d'accès englobe trois plateformes majeures (Apple, Google et Microsoft), plusieurs navigateurs (Chrome, Safari, Firefox et Edge), des dizaines de fournisseurs de clés d'accès / gestionnaires d'identifiants (par ex., 1Password, Bitwarden, Dashlane et d'autres) et d'innombrables combinaisons de systèmes d'exploitation/navigateurs/appareils. Chaque combinaison peut se comporter de manière légèrement différente, par ex. :
Lorsqu'un utilisateur crée une clé d'accès sur son iPhone mais souhaite se connecter sur un ordinateur portable Windows, il peut utiliser l'authentification multi-appareils (généralement via un code QR et Bluetooth). Ce flux fonctionne mais il est fragile :
Nous avons été les témoins directs de ces cas particuliers sur des milliers de combinaisons d'appareils. Si vous construisez des clés d'accès en interne, vous devez tous les tester et les gérer. Si vous ne le pouvez pas, vos utilisateurs rencontreront des erreurs que votre équipe de support ne pourra pas expliquer.
Même sur le même appareil, différents navigateurs se comportent différemment. Chrome sur macOS affiche des modales de clés d'accès différentes de Safari sur macOS. Firefox a son propre comportement. Les Client Hints et la détection du User-Agent deviennent cruciaux pour proposer les bons flux aux bons utilisateurs, mais leur analyse correcte sur toutes les combinaisons est une charge de maintenance qui ne s'arrête jamais.
Les tests et l'assurance qualité des clés d'accès sont déjà un défi pour les applications web (nous couvrons cela en détail dans Problème 5 : Les modifications de plateforme). Mais si votre produit comporte également des applications natives iOS et Android, la complexité se multiplie en raison des décisions architecturales et des comportements spécifiques aux plateformes que les équipes exclusivement web ne rencontrent jamais.
La première décision consiste à savoir s'il faut implémenter les clés d'accès de manière native ou via un WebView. Chaque approche présente des avantages et des inconvénients :
| Aspect | Implémentation native | Implémentation via WebView |
|---|---|---|
| Qualité de l'UX | La meilleure de sa catégorie, native | Dépend du type de WebView |
| Maintenance | Bases de code séparées pour iOS et Android | Logique web partagée |
| Exigences de plateforme | Doit suivre les changements de SDK | Doit gérer les problèmes de prise en charge WebAuthn |
| Complexité | Élevée (APIs spécifiques à la plateforme) | Moyenne (mais le type de WebView a son importance) |
Rien que sur iOS, vous pouvez choisir entre WKWebView, SFSafariViewController, SFAuthenticationSession et ASWebAuthenticationSession : chacun ayant des caractéristiques différentes de prise en charge des clés d'accès. Sur Android, les Chrome Custom Tabs se comportent différemment des WebViews standards. Ce sont des décisions que les équipes exclusivement web n'ont jamais à prendre et chaque choix crée sa propre surface de maintenance.
Au-delà de la décision architecturale, iOS et Android gèrent les clés d'accès différemment au niveau du système d'exploitation :
NotAllowedError sur le web, mais comme
SimpleAuthenticationServices.AuthorizationError sur iOS et
User cancelled the operation sur le
Credential Manager d'Android : consultez les erreurs WebAuthn en production pour
obtenir une cartographie complète des erreurs multiplateformes.Si vous exploitez à la fois une application web et des applications natives, vous ne vous contentez pas de doubler l'effort d'assurance qualité, mais vous le triplez. Le web, iOS et Android se comportent chacun comme des environnements de clés d'accès distincts qui nécessitent des tests de bout en bout et une surveillance indépendants. Et contrairement au web, où vous pouvez déployer immédiatement un correctif, les correctifs des applications natives sont ralentis par les cycles de révision des app stores.
« Clés d'accès prises en charge » ne signifie pas « clés d'accès utilisées ». Si vous n'avez pas de stratégie de déploiement et de mesure, votre adoption sera décevante et le projet sera qualifié d'échec en interne.
Nous avons couvert cela en détail dans notre article expliquant pourquoi les implémentations de clés d'accès échouent : si les utilisateurs ne passent pas aux clés d'accès, le projet a déjà échoué. Les mots de passe restent dominants, les coûts des OTP par SMS restent élevés, les risques de hameçonnage persistent et votre organisation ne voit aucun retour sur un investissement d'ingénierie important.
L'analyse de rentabilité pour l'adoption des clés d'accès est solide, mais seulement si l'adoption se produit réellement. Nous avons vu des entreprises lancer des clés d'accès avec d'excellentes implémentations techniques qui ont atteint moins de 5 % d'adoption parce que personne n'avait pensé à la stratégie de déploiement et d'adoption.
Stimuler l'adoption des clés d'accès est un défi de produit qui nécessite :
D'après notre expérience des déploiements de clés d'accès à grande échelle, voici ce que les entreprises devraient viser :
| Métrique | Faible | Acceptable | Forte |
|---|---|---|---|
| Taux de création de clés d'accès (sur les cibles) | < 10 % | 10 à 60 % | > 60 % |
| Taux de connexion par clé d'accès (sur les connexions) | < 5 % | 5 à 40 % | > 40 % |
Si vos chiffres d'adoption ressemblent à la colonne « faible » après trois mois, le projet est en difficulté. Sans analyses pour mesurer cela, vous ne le saurez même pas.
Les mises à jour du système d'exploitation et des navigateurs modifient les invites, le comportement de saisie automatique et les flux de secours. Si vous n'avez pas de surveillance continue, vous obtiendrez des régressions et des tickets de support sans avertissement.
Nous venons de publier un aperçu complet des erreurs WebAuthn qui se sont produites en production.
Contrairement aux mots de passe (qui ne sont que des chaînes que votre serveur valide), les clés d'accès dépendent d'une intégration approfondie avec le système d'exploitation, le navigateur et le gestionnaire d'identifiants. Lorsque Apple livre une nouvelle version d'iOS, les invites de création de clés d'accès peuvent sembler différentes. Lorsque Chrome met à jour sa logique de saisie automatique, votre flux de connexion peut être interrompu. Lorsqu'un gestionnaire de mots de passe publie une nouvelle version, il peut commencer à intercepter les demandes de clés d'accès d'une manière que vous n'aviez pas anticipée.
Un exemple récent est le bug d'iOS 26.2 où
isUserVerifyingPlatformAuthenticatorAvailable() renvoie false sur tous les navigateurs autres que Safari (Chrome, Edge, Firefox), nécessitant une logique de détection consciente de la plateforme utilisant
getClientCapabilities() comme solution de contournement.
Pour vous assurer d'être informé de tous les bugs potentiels et suivre l'adoption, vous devez configurer votre pile d'observabilité de l'authentification. Nous recommandons d'avoir au moins les éléments suivants en place :
NotAllowedError) et les erreurs inattendues (pics de AbortError liés à des bugs de simultanéité ou
de nouvelles erreurs de clé d'accès du Credential Manager après une mise à jour Android).C'est le type d'infrastructure d'analyse de l'authentification que la plupart des équipes ne construisent pas tant qu'elles n'ont pas déjà eu un incident. À ce moment-là, les dommages causés à la confiance des utilisateurs et à la crédibilité du projet en interne sont déjà faits.
Le véritable coût de l'implémentation des clés d'accès n'est pas la construction initiale. C'est la maintenance continue :
Abonnez-vous à notre Substack passkeys pour les dernières actualités.
Compte tenu de ces problèmes du jour 2, voici une évaluation honnête des cas où vous devriez et ne devriez pas lancer les clés d'accès.
S'investir pleinement pour des raisons réglementaires sans planification adéquate peut faire grimper les coûts de manière significative. Un système de clés d'accès mal implémenté est pire qu'aucun système de clés d'accès : il érode la confiance des utilisateurs, génère des frais généraux de support et donne aux parties prenantes internes une raison de tuer le projet.
Les problèmes du jour 2 décrits dans cet article sont exactement la raison pour laquelle de nombreuses entreprises choisissent d'acheter plutôt que de construire leur infrastructure de clés d'accès. La construction d'un serveur WebAuthn est la partie facile. Exploiter un système de clés d'accès de niveau production sur des milliers de combinaisons d'appareils, avec une récupération, une surveillance et des analyses d'adoption appropriées, est ce qui sépare une démonstration d'un déploiement réel.
Corbado existe spécifiquement parce que les problèmes du jour 2 sont difficiles. Notre plateforme gère la complexité opérationnelle afin que vous n'ayez pas à la construire et à la maintenir vous-même.
Corbado fournit des flux de récupération prêts à l'emploi avec des niveaux de sécurité adaptatifs. Des stratégies de clés d'accès synchronisées à l'authentification multi-appareils, en passant par la vérification automatisée de l'identité. La logique de récupération est intégrée et continuellement mise à jour.
Nos SDK frontends sont pré-testés sur des milliers de combinaisons de systèmes d'exploitation, de navigateurs et de fournisseurs de clés d'accès. La détection des appareils, la gestion du Conditional UI et le routage de secours se produisent automatiquement. Lorsqu'une nouvelle version de navigateur casse quelque chose, nous le corrigeons dans notre SDK avant que vos utilisateurs ne le remarquent.
Corbado prend en charge les implémentations de clés d'accès natives et via WebView avec des SDK qui font abstraction des différences entre les plateformes. Vous vous concentrez sur l'UX de votre application pendant que nous gérons la plomberie des clés d'accès sur iOS et Android.
Notre tableau de bord d'analyse suit toutes les mesures importantes : les taux de création de clés d'accès, les taux de réussite de connexion, les taux de solution de secours et les répartitions au niveau de l'appareil. Vous obtenez des informations exploitables pour stimuler l'adoption, pas seulement des données brutes.
Corbado surveille en permanence les changements du système d'exploitation et du navigateur qui affectent les clés d'accès. Nos SDK sont mis à jour de manière proactive. Votre déploiement de clés d'accès reste stable même lorsque le paysage de la plateforme évolue sous lui.
Les clés d'accès constituent la référence absolue en matière d'authentification. Cela ne fait aucun doute. Mais le chemin qui mène de « clés d'accès prises en charge » à « clés d'accès fonctionnant de manière fiable à grande échelle » est pavé de problèmes du jour 2 que la plupart des équipes sous-estiment.
Les cinq problèmes que nous avons abordés (récupération, cas particuliers multi-appareils, complexité des applications natives, adoption et modifications de plateforme) ne sont pas rares. Ce sont les principaux défis opérationnels de tout déploiement de clés d'accès en production. Les ignorer ne les fait pas disparaître. Cela signifie simplement que vos utilisateurs les découvrent en premier.
Ma recommandation honnête : si vous n'avez pas le savoir-faire et les ressources nécessaires pour implémenter correctement les clés d'accès, ne les lancez pas. Soit vous investissez dans les capacités (produit, ingénierie, sécurité et analyse), soit vous travaillez avec un partenaire qui a déjà résolu ces problèmes. Le pire résultat est un déploiement de clés d'accès bâclé qui est annulé parce que personne n'a planifié le jour 2.
Corbado est la Passkey Intelligence Platform pour les équipes CIAM qui gèrent l'authentification client à grande échelle. Nous vous montrons ce que les logs IDP et les outils d'analytics génériques ne voient pas : quels appareils, versions d'OS, navigateurs et gestionnaires de credentials prennent en charge les passkeys, pourquoi les enrôlements ne deviennent pas des connexions, où le flux WebAuthn échoue et quand une mise à jour OS ou navigateur casse silencieusement la connexion — le tout sans remplacer Okta, Auth0, Ping, Cognito ni votre IDP interne. Deux produits : Corbado Observe ajoute l'observabilité pour les passkeys et toute autre méthode de connexion. Corbado Connect apporte des passkeys managés avec analytics intégrés (aux côtés de votre IDP). VicRoads gère les passkeys pour plus de 5M d'utilisateurs avec Corbado (+80 % d'activation passkey). Parler à un expert Passkey →
Les cinq problèmes opérationnels sont les flux de récupération et de secours non sécurisés, les cas particuliers des écosystèmes multi-appareils, la complexité des applications natives, la faible adoption par les utilisateurs et les régressions silencieuses dues aux mises à jour du système d'exploitation et du navigateur. La plupart des équipes se concentrent sur l'intégration WebAuthn initiale et sous-estiment ces défis post-lancement, c'est pourquoi de nombreux projets de clés d'accès sont annulés ou discrètement abandonnés en interne.
Les utilisateurs peuvent s'authentifier via un code QR et un flux multi-appareils Bluetooth, mais cela nécessite que le Bluetooth soit activé sur les deux appareils et peut être bloqué par les politiques MDM de l'entreprise et les pare-feu. L'UX varie considérablement d'un navigateur à l'autre et les utilisateurs ne comprennent souvent pas pourquoi ils scannent un code QR, ce qui rend le routage de secours adapté à l'appareil et une communication claire essentiels pour les déploiements en entreprise.
Une forte adoption signifie un taux de création de clés d'accès supérieur à 60 % des utilisateurs éligibles et un taux de connexion par clé d'accès supérieur à 40 % de toutes les connexions. Des taux inférieurs à 10 % de création et inférieurs à 5 % de connexion après trois mois signalent un déploiement défaillant. Mesurer cela nécessite une infrastructure dédiée qui suit les taux de création, les taux de réussite de connexion, les taux de secours et les abandons répartis par combinaison d'appareil et de système d'exploitation.
Une implémentation native offre la meilleure expérience utilisateur de sa catégorie, mais nécessite des bases de code iOS et Android distinctes avec une gestion des API spécifique à la plateforme et des pipelines d'assurance qualité indépendants. Les approches WebView partagent la logique Web mais introduisent des incohérences dans la prise en charge des clés d'accès selon le type de WebView. Rien que sur iOS, le choix entre WKWebView, SFSafariViewController et ASWebAuthenticationSession implique des caractéristiques de prise en charge des clés d'accès différentes qui doivent être évaluées avant de s'engager dans une architecture.
Une récupération simplifiée, comme les réinitialisations par e-mail, réintroduit des canaux vulnérables au hameçonnage, tandis qu'une récupération trop stricte, comme les clés de sécurité matérielles obligatoires, crée des abandons. L'approche recommandée est à plusieurs niveaux : les clés d'accès synchronisées comme stratégie principale, l'authentification multi-appareils par code QR comme deuxième niveau, la vérification d'identité automatisée avec des contrôles de présence comme troisième niveau et les justificatifs d'identité numériques vérifiables comme quatrième niveau. Les niveaux à mettre en œuvre dépendent de votre modèle de menace, de votre base d'utilisateurs et de vos exigences réglementaires.
Articles associés
Table des matières