Use this file to discover all available pages before exploring further.
Avant de commencer
Vous avez besoin de ce qui suit :
Un locataire de développement Auth0 avec la connexion universelle configurée.
Une application configurée de domaine personnalisé.
Une app de développement ou d’exemple (comme React sample) s’exécutant sur votre localhost.
Une connexion de base de données qui utilise une connexion sans mot de passe.
À la fin de ce flux, vous disposerez d’un écran de connexion sans mot de passe personnalisé avec l’option liée aux courriels ou aux SMS.Pour en savoir plus, lisez le Guide de démarrage et consultez le Guide de référence de la trousse SDK.
Dans votre , configurez la connexion universelle, l’authentification Identifier First, et une connexion à la base de données qui utilise des mots de passe.Exécutez une application à page unique pour créer des écrans de connexion personnalisés. Pour comprendre le contexte des interfaces de personnalisations avancées, clonez notre application de base : git clone https://github.com/auth0/auth0-acul-react-boilerplateInstallez la trousse SDK ACUL. Après avoir cloné le composant React réutilisable, changez le répertoire vers le dossier auth0-acul-react-boilerplate et installez la trousse SDK.
# Clone the ACUL sample application into the root folder of your projectgit clone https://github.com/auth0-samples/auth0-acul-samples.git# Change directory to install the ACUL sample application cd auth0-acul-samples && npm i
Dans le dossier auth0-acul-react-boilerplate/src créez un dossier appelé screens et un fichier appelé Login.tsx. Importez la trousse SDK et, dans le composant React, initialisez la trousse SDK pour l’écran.
import { LoginPasswordlessEmailCode as ScreenProvider } from "@auth0/auth0-acul-js";export default function LoginPasswordlessEmailCode() { // Initialize the SDK for this screen const screenProvider = new ScreenProvider(); ... }
Utilisez la trousse SDK pour accéder aux propriétés et méthodes de l’écran.
En utilisant la trousse SDK, vous pouvez accéder aux propriétés et aux méthodes de l’écran. La trousse SDK Auth0 ACUL JS fournit des propriétés et des méthodes pour accéder aux données.Pour plus d’informations sur les données contextuelles, lisez Données contextuelle de connexion universelle.
En utilisant le SDK, soumettez les données capturées à l’écran au serveur. Le serveur traite ces données et dirigera l’utilisateur vers l’étape suivante du flux. En cas d’erreurs, cet écran est rechargé, ce qui vous permet de les présenter à l’utilisateur. Les erreurs sont accessibles via la trousse SDK.
const formSubmitHandler = (event: ChangeEvent<HTMLFormElement>) => { event.preventDefault(); // grab the value from the form const OtpInput = event.target.querySelector( "input#otp_code" ) as HTMLInputElement; const identifierInput = event.target.querySelector( "input#identifier" ) as HTMLInputElement; // Call the SDK screenProvider.submitCode({ username: identifierInput?.value, code: OtpInput?.value });
Dans le dossier auth0-acul-react-boilerplate/src créez un dossier appelé screens et un fichier appelé Login.tsx. Importez la trousse SDK et, dans le composant React, initialisez la trousse SDK pour l’écran.
import { LoginPasswordlessSmsOtp as ScreenProvider } from "@auth0/auth0-acul-js";export default function LoginPasswordlessSmsOtp() { // Initialize the SDK for this screen const screenProvider = new ScreenProvider(); ... }
Utilisez la trousse SDK pour accéder aux propriétés et méthodes de l’écran.
En utilisant la trousse SDK, vous pouvez accéder aux propriétés et aux méthodes de l’écran. La trousse SDK Auth0 ACUL JS fournit des propriétés et des méthodes pour accéder aux données.Pour plus d’informations sur les données contextuelles, lisez Données contextuelle de connexion universelle.
En utilisant le SDK, soumettez les données capturées à l’écran au serveur. Le serveur traite ces données et dirigera l’utilisateur vers l’étape suivante du flux. En cas d’erreurs, cet écran est rechargé, ce qui vous permet de les présenter à l’utilisateur. Les erreurs sont accessibles via la trousse SDK.
const formSubmitHandler = (event: ChangeEvent<HTMLFormElement>) => { event.preventDefault(); // grab the value from the form const OtpInput = event.target.querySelector( "input#otp_code" ) as HTMLInputElement; const identifierInput = event.target.querySelector( "input#identifier" ) as HTMLInputElement; // Call the SDK screenProvider.submitCode({ username: identifierInput?.value, code: OtpInput?.value });
3 : Configurez ACUL pour utiliser des ressources locales.
Utilisez l’interface de ligne de commande Auth0, Terraform ou Management API pour activer ACUL. Pour des détails sur ce qui peut être configuré, consultez Configurer les écrans ACUL.
Interface de ligne de commande Auth0 (recommandé)
Auth0 Terraform
Auth0 Management API
Dans le répertoire racine de votre projet, créez un dossier settings et incluez-y un fichier {SCREENNAME}.json.
4 : Déployez les ressources et mettez à jour la configuration de votre locataire.
La personnalisation avancée pour la connexion universelle fonctionne avec tous les programmes de regroupement JavaScript modernes, comme Vite et Webpack. Pour plus d’informations, lisez Déployer des personnalisations avancées en production.Pour plus d’informations sur le déploiement d’ACUL pour votre locataire, lisez Configurer les écrans ACUL.