PATCH /v2/prompts/{prompt}/screen/{screen}/rendering.
La configuration de rendu comprend les propriétés suivantes :
Modes de rendu
rendering_mode détermine si un écran utilise l’interface utilisateur Universal Login par défaut ou votre implémentation ACUL personnalisée.
- Standard : L’écran est rendu à l’aide de l’interface utilisateur Universal Login par défaut. Vous pouvez utiliser des Partial et des variables de modèle pour personnaliser l’écran.
- Avancé : L’écran est rendu à l’aide de vos ressources JavaScript et CSS personnalisées chargées via
head_tags. Les Partial ne s’appliquent pas. Par défaut, le mode avancé s’applique à toutes les applications et organisations du locataire. - Avancé (filtré) : L’écran est rendu avec ACUL pour les requêtes qui correspondent aux critères définis dans
filters(applications, organisations ou domaines personnalisés précis). Les requêtes qui ne correspondent pas aux filtres reviennent au rendu standard, où les Partial s’appliquent.
rendering_mode sur advanced et fournissez un objet filters avec un match_type (includes_any ou excludes_any) et au moins un tableau d’entités (clients, organizations ou domains). Chaque entité peut être identifiée par id ou par une paire clé-valeur dans metadata.
Les balises <head> constituent le principal mécanisme pour charger votre interface utilisateur personnalisée dans la page hôte d’ACUL. Lorsqu’Auth0 affiche un écran en mode avancé, il fournit une page HTML minimale et injecte dans le <head> de la page les éléments définis dans head_tags. Ces balises chargent les ressources JavaScript et CSS groupées qui composent votre écran d’authentification personnalisé.
Chaque entrée du tableau head_tags est un objet comportant les propriétés suivantes :
L’attribut
integrity est obligatoire pour les balises script et les balises de feuille de style. Auth0 utilise Subresource Integrity (SRI) pour vérifier qu’aucune modification n’a été apportée aux ressources.
Segments d’URL dynamiques
head prennent en charge les segments dynamiques au moyen de la syntaxe de modèle Liquid, ce qui vous permet de fournir différents bundles de ressources selon le contexte d’authentification actuel. Par exemple, vous pouvez charger un bundle JavaScript différent par application ou par organisation afin de prendre en charge le multimarque.
Les variables disponibles pour les segments dynamiques comprennent :
- Invite et écran :
{{ screen.name }},{{ prompt.name }},{{ locale }} - Application :
{{ client.id }},{{ client.name }},{{ client.metadata.KEY_NAME }} - Organisation :
{{ organization.id }},{{ organization.name }},{{ organization.metadata.KEY_NAME }}
integrity accepte plusieurs hash séparés par des espaces; le navigateur charge la ressource si l’un des hash correspond.
<head> pour charger des scripts d’analyse, des polices personnalisées ou des balises méta.
Pour remplacer les balises <head> par défaut de Universal Login (comme le favicon) par les vôtres, définissez default_head_tags_disabled sur true.
Données de contexte
universal_login_context sur la page hôte. Dans le code de votre application, utilisez les hooks du ACUL React SDK ou les méthodes du ACUL JS SDK pour accéder aux données de contexte.
Chaque valeur que vous voulez rendre disponible dans votre écran doit être explicitement répertoriée dans le tableau context_configuration. Auth0 retire du payload les clés dont la valeur est vide ou nulle.
Les valeurs de contexte statiques suivantes sont disponibles :
Vous pouvez aussi ajouter des clés dynamiques à l’aide de la notation par points :
client.metadata.YOUR_KEYpour les métadonnées de l’applicationorganization.metadata.YOUR_KEYpour les métadonnées de l’organisationtransaction.custom_domain.domain_metadata.YOUR_KEYpour les métadonnées du domaine personnaliséuntrusted_data.authorization_params.ext-YOUR_KEYpour les paramètres de requête personnalisés transmis au point de terminaison/authorizeavec le préfixeext-