UserPasskeyManagement permet aux utilisateurs d’inscrire et de révoquer des clés d’accès dans une interface unique sous forme de carte, à l’aide de l’API My Account, sans nécessiter de props pour le rendu.
Le composant affiche une liste des clés d’accès inscrites, un bouton pour en ajouter une et une option permettant de les révoquer.

Prérequis
- Configurez un domaine personnalisé pour votre tenant Auth0. Les clés d’accès nécessitent un domaine personnalisé.
- Activez les clés d’accès pour votre connexion à une base de données Auth0. Pour savoir comment activer les clés d’accès dans votre tenant Auth0, consultez Configurer les clés d’accès.
- Faites correspondre l’origine. L’ID de la partie utilisatrice doit correspondre au domaine de votre application ou à un domaine parent enregistrable de celui-ci. Pour en savoir plus, consultez ID de partie utilisatrice pour les clés d’accès
- Assurez-vous que votre application utilise HTTPS. WebAuthn exige que votre application soit accessible en HTTPS.
- Installez et configurez Universal Components dans votre application. Pour installer et configurer Universal Components, consultez Créer une interface utilisateur de sécurité du compte.
Configurez votre application
- React (SPA)
- Next.js (RWA)
- shadcn
Installez le composant
react-hook-form et @tanstack/react-query sont des dépendances pairs. La commande installe également la dépendance @auth0/universal-components-core, qui fournit des utilitaires partagés et l’intégration à Auth0.Pour commencer
- Les composants sont toujours importés depuis le point d’entrée racine
@auth0/universal-components-react, quel que soit le framework utilisé. - Seul le composant
Auth0ComponentProviderutilise un sous-chemin propre au framework :/spapour les applications React et/rwapour les applications Next.js.
Exemple d’intégration complet
Exemple d’intégration complet
Props
Props d’affichage
| Prop | Type | Par défaut | Description |
|---|---|---|---|
hideHeader | boolean | false | Masque l’en-tête de la page (le titre et la description). La carte de section contenant la liste des clés d’accès est toujours affichée. |
Props d’Action
| Prop | Type | Description |
|---|---|---|
addAction | ComponentAction<void> | Hooks de cycle de vie du flux d’ajout d’une clé d’accès. Définissez disabled: true pour masquer le bouton d’ajout. |
revokeAction | ComponentAction<Passkey> | Hooks de cycle de vie du flux de révocation d’une clé d’accès. Définissez disabled: true pour masquer l’option de révocation. |
onFetch | () => void | Déclenché une fois la liste des clés d’accès chargée avec succès. |
onBefore se déclenche avant l’affichage de l’invite WebAuthn du navigateur; retournez false pour annuler (par exemple, afin d’imposer une limite de clés d’accès). onAfter se déclenche une fois la nouvelle clé d’accès enregistrée.
disabledmasque le bouton “Ajouter une clé d’accès”.onBefore()s’exécute avant la procédure d’enrôlement WebAuthn. Retournezfalsepour annuler.onAfter()s’exécute une fois la clé d’accès enregistrée avec succès. Utilisez-le pour actualiser l’état de la session ou envoyer des données analytiques.
onBefore s’exécute avant l’affichage de la boîte de dialogue de confirmation intégrée; vous pouvez donc annuler le flux avant que l’utilisateur ne la voie. onAfter se déclenche après la suppression de la clé d’accès du compte.
disabledmasque l’option de révocation dans le menu d’actions de la clé d’accès.onBefore(passkey)s’exécute avant l’appel d’API de révocation. Reçoit l’objetPasskey. Retournezfalsepour annuler.onAfter(passkey)s’exécute après la révocation réussie de la clé d’accès. Reçoit l’objetPasskeyrévoqué.
disabled: true sur les deux actions :
Personnaliser les props
| Prop | Type | Description |
|---|---|---|
customMessages | Partial<UserPasskeyManagementMessages> | Remplace le texte et les traductions par défaut de l’interface utilisateur. |
styling | ComponentStyling<UserPasskeyManagementClasses> | Variables CSS et surcharges de classes. |
Messages disponibles
Messages disponibles
- header—
title,description(en-tête de page; masqué lorsquehideHeaderest défini surtrue) - Carte principale—
section_title,enabled(badge affiché lorsque des clés d’accès sont enregistrées),no_passkeys(message d’état vide),add_passkey(libellé du bouton d’ajout) - Éléments de la liste—
created_at(utilisez${date}comme espace réservé),last_used(utilisez${date}comme espace réservé) - Actions—
actions.revoke(libellé du menu d’actions associé à chaque clé d’accès) - Notifications de réussite—
success.add,success.revoke - Fenêtre modale de révocation—
modals.revoke.title,modals.revoke.consent(utilisez<bold>${name}</bold>pour mettre en gras le nom de la clé d’accès),modals.revoke.cancel,modals.revoke.confirm
Options de style disponibles
Options de style disponibles
Variables—propriétés CSS personnalisées
commonS’appliquent aux deux thèmeslightMode clair uniquementdarkMode sombre uniquement
UserPasskeyManagement-rootle conteneur de carte externe qui contient la liste des clés d’accèsUserPasskeyManagement-itemchaque carte de ligne de clé d’accèsPasskeyActionModal-modalContentla zone de contenu de la fenêtre modale de confirmation de révocation
Définitions TypeScript
Personnalisation avancée
useUserPasskey pour créer une interface personnalisée de gestion des clés d’accès.
customMessages, addAction, revokeAction et onFetch. Il renvoie les données de clé d’accès, l’état de chargement et des actions, la cible de révocation active, ainsi que les gestionnaires d’inscription et de révocation de clé d’accès.
Utilisez UserPasskeyManagement si vous souhaitez utiliser l’interface intégrée. Si vous utilisez le hook, implémentez l’interface utilisateur de confirmation de révocation correspondante et son comportement de fermeture.
En savoir plus
Gestion des facteurs MFA des utilisateurs
Gérez les facteurs MFA (TOTP, SMS, OTP par courriel, push, codes de récupération) ainsi que les clés d’accès.
Créer une interface de sécurité des comptes en libre-service
Aperçu, prérequis et configuration du framework pour tous les composants My Account.
