Avant de commencer
- Assurez-vous que votre locataire dispose d’un domaine personnalisé configuré.
- Confirmez que vous utilisez Universal Login pour toutes les invites d’inscription et de connexion, et assurez-vous que l’option Customize Login Page est désactivée pour les invites de connexion.
- Vérifiez qu’un modèle de page personnalisé est configuré.
Cas d’utilisation
N’utilisez les personnalisations des invites d’inscription et de connexion pour transmettre ou recueillir des données sensibles ou réglementées que 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 l’Auth0 Dashboard pour gérer les partials
- Accédez à Auth0 Dashboard > Branding > Universal Login, puis sélectionnez Enhance screens with partials.
- Sélectionnez l’écran à personnaliser dans l’éditeur de partials.
Les écrans peuvent avoir les modes de rendu suivants :
- STANDARD : le
screenest rendu à l’aide de l’interface utilisateur Universal Login par défaut; vous pouvez utiliser des partials pour insérer des extraits de code et des variables de modèle. - ADVANCED : le
screenest rendu à l’aide d’ACUL et les partials ne s’appliquent pas. - ADVANCED (FILTERED) : le
screenest rendu avec ACUL appliqué à des applications et à des organisations 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 modèle.
- Sélectionnez pour ajouter des EXTRAITS DE CODE au point d’entrée sélectionné.
- Sélectionnez { } pour ajouter des VARIABLES DE MODÈLE au point d’entrée sélectionné.
- Sélectionnez ACTIONS pour ajouter des Actions et appliquer une logique personnalisée à l’aide du contenu et des champs de vos Partial.
- Sélectionnez Enregistrer et publier pour mettre à jour votre écran.
![[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 de façon programmatique
GET /prompts/{prompts_name}/partials). Chaque invite doit préciser l’screen lors de l’ajout, de la mise à jour ou de la suppression d’un partial. Les Partials peuvent contenir au maximum 10 000 caractères.
Il est également possible de gérer les Partials à l’aide de l’interface Customize Interface de dans Auth0 CLI, en exécutant auth0 ul customize dans votre terminal.

Mettre en forme 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 également.
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 être exécutée à 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 à la soumission. - Pour respecter les WCAG, les champs de saisie doivent être liés par programmation à leurs messages d’erreur — par exemple, en utilisant
aria-describedby="error-id"etaria-invalid="true"— afin que les lecteurs d’écran annoncent les erreurs de validation.
Faites preuve de prudence 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 de script intersite.Chaque fois que possible, Auth0 recommande de valider les données fournies par l’utilisateur avant leur 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 de nommage 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 d’appel permettant d’ajouter une variable pour le texte du libellé d’une case à cocher des conditions d’utilisation, en anglais et en espagnol. Consultez le pour en savoir plus.
Utiliser une variable de texte personnalisée dans un Partial
prompts.screen.text ; pour l’exemple var-tos de la section précédente, la référence est prompt.screen.text.varTos. Consultez l’exemple ci-dessous pour voir comment utiliser, dans un partial de l’invite Signup ID, une variable créée précédemment. Notez que la variable var-tos de la Management API est référencée sous la forme varTos dans le partial.
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 des invites d’inscription sont accessibles dans le déclencheur
pre-user-registration. Une erreur de validation provenant du déclencheur empêche l’utilisateur de s’inscrire. - Les données des invites 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 des invites 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 des invites 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 des invites 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.
passkey :
- Les données de l’invite
passkey-enrollmentsont accessibles dans le déclencheurpre-user-registration. Une erreur de validation provenant du déclencheur empêche l’utilisateur de s’inscrire. - Les invites
passkey-enrollmentetpasskey-enrollment-localne capturent jamais de données dans le déclencheur Post Login. - Les données de l’invite
passkey-enrollment-localne sont pas accessibles, puisqu’elle est toujours affichée après l’exécution du déclencheurpost-login.
- Les données ne sont pas capturées lorsqu’un utilisateur se connecte au moyen d’une connexion sociale ou d’entreprise.
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 ont été traitées à l’aide de la fonction utilitaire
{{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 avec, par exemple,
{{encodeURI}}ou{{encodeURIParam}}
Enregistrer dans les métadonnées de l’utilisateur
user_metadata de l’utilisateur à l’aide de api.user.setUserMetadata.