Avant de commencer
- Assurez-vous qu’un Custom Domain est configuré pour votre tenant.
- Confirmez que vous utilisez Universal Login pour tous les prompts d’inscription et de connexion, et assurez-vous que la bascule Customize Login Page est désactivée pour les prompts de connexion.
- Vérifiez qu’un modèle de page personnalisé est configuré.
Cas d’utilisation
Utilisez les personnalisations des prompts d’inscription et de connexion uniquement pour communiquer ou recueillir des données sensibles ou réglementées, dans la mesure permise par votre entente avec Okta.
Terminologie
loginlogin-idlogin-passwordlogin-passwordless-sms-otplogin-passwordless-email-codepasskey-enrollmentpasskey-enrollment-local
signupsignup-idsignup-passwordpasskey-enrollmentpasskey-enrollment-local
form-content-startform-content-endform-footer-startform-footer-end
secondary-actions-startsecondary-actions-end

Utilisez Auth0 Dashboard pour gérer les Partials
- Accédez à Auth0 Dashboard > Branding > Universal Login, puis sélectionnez Enhance screens with partials.
- Sélectionnez le Screen à personnaliser dans l’éditeur de partials.
Les Screens peuvent avoir les modes de rendu suivants :
- STANDARD : le
screenest rendu à l’aide de l’UI Universal Login par défaut; vous pouvez utiliser des partials pour insérer des extraits de code et des variables de gabarit. - ADVANCED : le
screenest rendu à l’aide de ACUL, et les partials ne s’appliquent pas. - ADVANCED (FILTERED) : le
screenest rendu avec ACUL appliqué à des applications et à des organizations précises; les partials s’appliquent uniquement auxscreensexclus des filtres ACUL.
- Sélectionnez POINTS D’ENTRÉE pour insérer des extraits de code et des variables de gabarit.
- Sélectionnez pour ajouter des EXTRAITS DE CODE au point d’entrée sélectionné.
- Sélectionnez { } pour ajouter des VARIABLES DE GABARIT au point d’entrée sélectionné.
- Sélectionnez ACTIONS pour ajouter des Actions et appliquer une logique personnalisée à l’aide des champs et du contenu de vos Partials.
- Sélectionnez Enregistrer et publier pour mettre à jour votre Screen.
![[partials]](https://mintcdn.com/translations/S4csL9vq6QUX5-Rr/docs/images/universal-login/partials-editor.png?fit=max&auto=format&n=S4csL9vq6QUX5-Rr&q=85&s=fd1a78906e8f1071a6b346294bc5a528)
Gérer les Partials par programmation
GET /prompts/{prompts_name}/partials). Chaque prompt doit préciser le screen lors de l’ajout, de la mise à jour ou de la suppression d’un partial. Les Partials peuvent contenir un maximum de 10 000 caractères.
Les Partials peuvent aussi être gérés à l’aide de l’interface de personnalisation de dans Auth0 CLI en exécutant auth0 ul customize dans votre terminal.

Styliser et valider les champs de formulaire
<input type="text"><input type="number"><input type="checkbox"><input type="password"><input type="email"><input type="tel"><input type="url"><select><textarea>
<div> avec la classe ulp-field. De même, ajoutez la classe ulp-error au même <div> pour utiliser les styles d’erreur prédéfinis. Si l’élément ulp-error-info est présent, un message d’erreur mis en forme s’affichera aussi.
Vous pouvez trouver des extraits de code prédéfinis dans l’éditeur de partials.
Validation côté client
<head> du modèle de page.
Pour ajouter une validation côté client à un élément de formulaire :
- Référencez la fonction de validation à l’aide de l’attribut
data-ulp-validation-functionsur l’élément<div class="ulp-error-info">. - Indiquez sur quels événements DOM la fonction de validation doit s’exécuter à l’aide de l’attribut
data-ulp-validation-event-listenerssur l’élément<div class="ulp-error-info">, en notant que les validations s’exécutent automatiquement lors de la soumission. - Pour assurer la conformité aux WCAG, les champs de saisie doivent être liés par programmation à leurs messages d’erreur — par exemple, au moyen de
aria-describedby="error-id"etaria-invalid="true"— afin que les lecteurs d’écran annoncent les erreurs de validation.
Soyez prudent lorsque vous utilisez du JavaScript tiers sur votre page d’inscription. Des renseignements sensibles liés à la sécurité transitent souvent par la page d’inscription, ce qui la rend vulnérable aux attaques par script intersite.Dans la mesure du possible, Auth0 recommande de valider les données fournies par l’utilisateur avant la soumission.
Localiser le contenu
Créer ou mettre à jour une variable de texte personnalisée
screen lors de l’ajout, de la mise à jour ou de la suppression d’une variable de texte personnalisée. Les variables de texte personnalisées suivent la convention d’appellation var-<name>. Les liens Markdown sont pris en charge et convertis en éléments HTML <a> avant d’être affichés aux utilisateurs.
Vous trouverez ci-dessous un exemple de requête pour ajouter une variable au libellé d’une case à cocher des Conditions d’utilisation en anglais et en espagnol. Consultez la pour en savoir plus.
Utiliser une variable de texte personnalisée dans un Partial
prompts.screen.text; la référence pour l’exemple var-tos de la section précédente est prompt.screen.text.varTos. Consultez l’exemple ci-dessous pour voir comment utiliser, dans un partial du prompt Signup ID, une variable créée précédemment, en notant que la variable var-tos de la Management API y est référencée sous la forme varTos.
Valider et enregistrer les données capturées
Lorsque vous utilisez des éléments de formulaire personnalisés, vous devez inclure le préfixe
ulp- dans tous les noms de champ afin que les données soient accessibles dans Actions.event.request.body. Les clients peuvent renvoyer une erreur de validation à l’aide de la fonction api.validation.error.
Lorsque vous utilisez une connexion de base de données :
- Les données provenant des prompts d’inscription sont accessibles dans le déclencheur
pre-user-registration. Une erreur de validation renvoyée par le déclencheur empêche l’utilisateur de s’inscrire. - Les données provenant des prompts de connexion sont accessibles dans le déclencheur
post-login. Les erreurs de validation sont transmises à la page d’erreur de l’application du client.
- Les données provenant des prompts de connexion sont accessibles dans le déclencheur
post-login. Les erreurs de validation sont transmises à la page d’erreur de l’application du client.
-
Les données provenant des prompts d’inscription sont accessibles dans le déclencheur
pre-user-registrationavec les scripts d’action de base de données personnalisée suivants : Create User et Login. -
Les données provenant des prompts de connexion sont accessibles dans le déclencheur
post-loginavec les scripts d’action de base de données personnalisée suivants : Login et Change Password.
Pour utiliser des scripts d’action de base de données personnalisée, activez Context objects in database scripts dans votre connexion de base de données personnalisée. Pour en savoir plus, consultez Enable context object.
- Les données provenant à la fois des prompts d’inscription et de connexion sont accessibles dans le déclencheur
post-login. Les erreurs de validation sont transmises à la page d’erreur de l’application du client.
- Les données provenant du prompt
passkey-enrollmentsont accessibles dans le déclencheurpre-user-registration. Une erreur de validation renvoyée par le déclencheur empêche l’utilisateur de s’inscrire. - Les prompts
passkey-enrollmentetpasskey-enrollment-localne capturent jamais de données dans le déclencheur Post Login. - Les données provenant du prompt
passkey-enrollment-localne sont pas accessibles, puisqu’il est toujours affiché après l’exécution du déclencheurpost-login.
Assainissez toutes les données que vous recueillez dans le formulaire avant de les enregistrer ou de les afficher.
- Assurez-vous que toutes les données enregistrées sont passées par la fonction d’assistance
{{escape}}de Liquid - Si vous affichez des données dans un modèle de courriel, supprimez la syntaxe Liquid
- Si vous affichez des données sur une page Web, échappez les entités HTML
- Si vous enregistrez des données dans une base de données, utilisez des requêtes paramétrées
- Si vous transmettez des données dans une chaîne de requête, encodez-les, par exemple avec :
{{encodeURI}}ou{{encodeURIParam}}
Enregistrer dans les métadonnées utilisateur
user_metadata de l’utilisateur au moyen de api.user.setUserMetadata.