Skip to main content
Le composant SsoProviderCreate offre une interface unifiée pour ajouter de nouveaux fournisseurs de Single Sign-On.

Prérequis de configuration

Configuration Auth0 requise—Assurez-vous que votre tenant est configuré avec l’API My Organization. Consultez le guide de configuration →

Installation

L’exécution de l’une ou l’autre de ces commandes installe également la dépendance @auth0/universal-components-core pour les utilitaires partagés et l’intégration à Auth0.

Pour commencer

Props

Props requises

Les props requises sont essentielles au fonctionnement du composant. Pour SsoProviderCreate, il n’y a qu’une seule prop principale, qui détermine ce qui se passe après la création réussie d’un fournisseur.
PropTypeDescription
createActionComponentAction<…>Obligatoire. Contrôle le flux après la création.
createAction Type : ComponentAction<CreateIdentityProviderRequestContentPrivate, IdentityProvider> La prop createAction est obligatoire, car elle détermine vers quelle page les utilisateurs sont redirigés après la création réussie d’un fournisseur. Sans elle, le composant ne saurait pas quoi faire ensuite. Propriétés :
  • disabled—Désactive le bouton de création (par exemple, lorsqu’une autre opération est en cours)
  • onBefore(data)—S’exécute avant la création du fournisseur. Retournez false pour empêcher la création (par exemple, afin d’afficher d’abord une boîte de dialogue de confirmation).
  • onAfter(data, result)—S’exécute après la création réussie du fournisseur. Utilisez-le pour naviguer vers une autre page ou suivre l’événement.
Exemple :

Props d’affichage

Les props d’affichage contrôlent le rendu du composant sans en modifier le comportement. Utilisez-les pour masquer des sections ou activer le mode lecture seule.
PropTypeDescription
readOnlybooleanDésactive tous les champs du formulaire. Par défaut : false
hideHeaderbooleanMasque la section d’en-tête. Par défaut : false

Props d’action

Les props d’action gèrent les interactions utilisateur au-delà du processus de création principal. Elles contrôlent la navigation et le comportement des étapes de l’assistant.
PropTypeDescription
backButtonObjectConfiguration du bouton de retour.
onNextFunctionFonction de rappel pour la navigation entre les étapes.
onPreviousFunctionFonction de rappel pour la navigation entre les étapes.
backButton Type : { icon?: LucideIcon; onClick: (e: MouseEvent) => void } Configure le bouton de retour dans l’en-tête du composant. Utilisez-le pour revenir à votre liste de fournisseurs ou à la page précédente. Propriétés :
  • icon—Composant d’icône Lucide personnalisé (facultatif; ArrowLeft par défaut)
  • onClick—Gestionnaire de clic pour la navigation
Exemple :

onNext / onPrevious Type : (stepId: string, values: Partial<SsoProviderFormValues>) => boolean Contrôlez la navigation entre les étapes de l’assistant. Ces callbacks sont appelés lorsque l’utilisateur clique sur Suivant ou Précédent. Retournez false pour empêcher la navigation. Cas d’utilisation :
  • Valider les données de l’étape avant de poursuivre
  • Consigner des données analytiques à la fin d’une étape
  • Ignorer certaines étapes de façon conditionnelle
Paramètres :
  • stepId—Identifiant de l’étape actuelle ("provider-select", "provider-details", "provider-configure")
  • values—Valeurs actuelles du formulaire
Exemple :

Props de personnalisation

Les props de personnalisation vous permettent d’adapter le composant à votre image de marque, à vos paramètres régionaux et à vos exigences de validation, sans modifier le code source.
PropTypeDescription
schemaSsoProviderSchemaRègles de validation des champs.
customMessagesPartial<SsoProviderCreateMessages>Remplacements de texte i18n.
stylingComponentStyling<SsoProviderCreateClasses>Variables CSS et remplacements de classes.
schema Définissez des règles de validation personnalisées pour les champs du fournisseur. Les règles sont organisées par stratégie de fournisseur (le protocole d’authentification utilisé, comme oidc, samlp, waad, google-apps, adfs, pingfederate ou okta). Tous les champs prennent en charge regex, errorMessage, minLength, maxLength et required.
Détails du fournisseur
  • name, displayName
Okta
  • okta.domain, okta.client_id, okta.client_secret, okta.icon_url, okta.callback_url
ADFS
  • adfs.meta_data_source, adfs.meta_data_location_url, adfs.adfs_server, adfs.fedMetadataXml
Google Workspace
  • google-apps.domain, google-apps.client_id, google-apps.client_secret, google-apps.icon_url, google-apps.callback_url
OIDC
  • oidc.type, oidc.client_id, oidc.client_secret, oidc.discovery_url, oidc.isFrontChannel
PingFederate
  • pingfederate.signatureAlgorithm, pingfederate.digestAlgorithm, pingfederate.signSAMLRequest, pingfederate.metadataUrl, pingfederate.signingCert, pingfederate.idpInitiated, pingfederate.icon_url
SAML
  • samlp.meta_data_source, samlp.single_sign_on_login_url, samlp.signatureAlgorithm, samlp.digestAlgorithm, samlp.protocolBinding, samlp.signSAMLRequest, samlp.bindingMethod, samlp.metadataUrl, samlp.cert, samlp.idpInitiated, samlp.icon_url
Azure AD
  • waad.domain, waad.client_id, waad.client_secret, waad.icon_url, waad.callback_url

customMessages Personnalisez tous les textes et toutes les traductions. Tous les champs sont facultatifs et les valeurs par défaut sont utilisées s’ils ne sont pas fournis.
header—En-tête du composant
  • title, back_button_text
provider_select—Étape 1
  • title, description
provider_details—Étape 2
  • title, description
  • fields.namelabel, placeholder, helper_text, error
  • fields.display_namelabel, placeholder, helper_text, error
provider_configure—Étape 3
  • title, description, guided_setup_button_text
  • fields.okta—Champs Okta
  • fields.adfs—Champs ADFS
  • fields.google-apps—Champs Google Workspace
  • fields.oidc—Champs OIDC
  • fields.pingfederate—Champs PingFederate
  • fields.samlp—Champs SAML
  • fields.waad—Champs Azure AD
notifications—Réponses de l’API
  • general_error, provider_create_success

style Personnalisez l’apparence à l’aide de variables CSS et de surcharges de classes. Prend en charge le style adapté au thème.
Variables—propriétés personnalisées CSS
  • common—Appliquées à tous les thèmes
  • light—Thème clair uniquement
  • dark—Thème foncé uniquement
Classes—surcharges de classes de composants
  • SsoProviderCreate-header
  • SsoProviderCreate-wizard
  • ProviderSelect-root
  • ProviderDetails-root
  • ProviderConfigure-root

Personnalisation avancée

Le composant SsoProviderCreate se compose de sous-composants et de hooks. Vous pouvez les importer individuellement pour créer des workflows personnalisés de création de fournisseurs SSO si vous utilisez shadcn.

Sous-composants disponibles

Pour les cas d’utilisation avancés, vous pouvez importer des sous-composants individuels afin de créer des workflows personnalisés de création de fournisseurs SSO. C’est utile lorsque vous devez intégrer une étape unique à une autre interface utilisateur ou personnaliser le flux de l’assistant au-delà de ce que permettent les props.
ComposantDescription
ProviderSelectÉtape de sélection de la stratégie avec icônes de fournisseurs
ProviderDetailsÉtape de configuration du nom et du nom d’affichage
ProviderConfigureÉtape de configuration propre à la stratégie
ProviderConfigureFieldsChamps de formulaire dynamiques selon la stratégie
OktaProviderFormFormulaire de configuration propre à Okta
AdfsProviderFormFormulaire de configuration propre à ADFS
GoogleAppsProviderFormFormulaire de configuration propre à Google Workspace
OidcProviderFormFormulaire de configuration propre à OIDC
PingFederateProviderFormFormulaire de configuration propre à PingFederate
SamlpProviderFormFormulaire de configuration propre à SAML
WaadProviderFormFormulaire de configuration propre à Azure AD
WizardInterface utilisateur d’un assistant à plusieurs étapes

Hooks disponibles

Ces hooks fournissent la logique sous-jacente sans interface utilisateur. Utilisez-les pour créer des interfaces entièrement personnalisées tout en tirant parti de l’intégration au niveau de l’API Auth0.
HookDescription
useSsoProviderCreateLogique de création de Provider et intégration au niveau de l’API