Skip to main content
El componente SsoProviderTable proporciona una interfaz unificada para listar y configurar proveedores de inicio de sesión único para su organización.

Requisitos de configuración

Se requiere la configuración de Auth0 - Asegúrese de que su inquilino esté configurado para usar la API My Organization. Ver la guía de configuración →

Instalación

Ejecutar cualquiera de los comandos también instala la dependencia @auth0/universal-components-core para utilidades compartidas y la integración con Auth0.

Primeros pasos

Props

Props obligatorias

Las props requeridas son fundamentales para el funcionamiento del componente. SsoProviderTable requiere ambas acciones de navegación para gestionar el flujo de trabajo típico de administración de proveedores.
PropTipoDescripción
createActionComponentAction<void>Obligatorio. Navega para crear el proveedor.
editActionComponentAction<IdentityProvider>Obligatorio. Navega para editar el proveedor.
createActionType: ComponentAction<void>La prop createAction es obligatoria porque controla a dónde se redirige a los usuarios cuando hacen clic en “Add Provider”. Sin esta prop, la tabla no sabría cómo iniciar el flujo de creación del proveedor.Propiedades:
  • disabled - Desactiva el botón “Agregar proveedor”
  • onBefore() - Se ejecuta antes de que ocurra la navegación. Devuelve false para evitar la navegación (por ejemplo, si el usuario no tiene permisos).
  • onAfter() - Se ejecuta después de que onBefore se complete correctamente. Úsalo para ir a tu página de creación o registrar analíticas.
Ejemplo:

editActionType: ComponentAction<IdentityProvider>La prop editAction es obligatoria porque controla a dónde se redirige a los usuarios cuando hacen clic en una fila de proveedor. El callback recibe los datos del proveedor para que puedas navegar a la página de edición correcta.Propiedades:
  • disabled - Desactiva la navegación al hacer clic en la fila
  • onBefore(provider) - Se ejecuta antes de que se produzca la navegación. Devuelve false para evitar la navegación (por ejemplo, para realizar comprobaciones de acceso condicional).
  • onAfter(provider) - Se ejecuta después de que onBefore finaliza correctamente. Úsalo para ir a la página de edición con los datos del proveedor.
Ejemplo:

Propiedades de visualización

Las props de visualización controlan cómo se renderiza el componente sin afectar su comportamiento. Úsalas para ocultar secciones o habilitar el modo de solo lectura.
PropiedadTipoDescripción
readOnlybooleanDesactiva todas las acciones de la tabla. Valor predeterminado: false
hideHeaderbooleanOculta la sección de encabezado. Valor predeterminado: false

Props de Action

Las props de Action gestionan las interacciones del usuario más allá de la navegación principal. Estas controlan las operaciones de eliminación, supresión y activación/desactivación.
PropTipoDescripción
deleteActionComponentAction<IdentityProvider>Elimina permanentemente el proveedor.
deleteFromOrganizationActionComponentAction<IdentityProvider>Quita el proveedor de la organización.
enableProviderActionComponentAction<IdentityProvider>Interruptor para habilitar o deshabilitar el proveedor.
deleteActionType: ComponentAction<IdentityProvider>Controla la eliminación permanente de un proveedor de SSO. Esta acción es destructiva: el proveedor se elimina por completo del tenant de Auth0.Propiedades:
  • disabled - Deshabilita la opción de eliminación
  • onBefore(provider) - Se ejecuta antes de la eliminación. Devuelve false para evitarla (se recomienda para los cuadros de diálogo de confirmación).
  • onAfter(provider) - Se ejecuta después de que el proveedor se haya eliminado correctamente. Úsalo para registrar el evento o mostrar una notificación.
Ejemplo:

deleteFromOrganizationActionType: ComponentAction<IdentityProvider>Controla la eliminación de un proveedor de la organización sin eliminarlo del tenant. El proveedor sigue estando disponible para volver a agregarse más adelante.Propiedades:
  • disabled - Desactiva la opción de eliminar
  • onBefore(provider) - Se ejecuta antes de eliminarlo. Devuelve false para evitar la eliminación (por ejemplo, para mostrar una confirmación).
  • onAfter(provider) - Se ejecuta después de que el proveedor se haya eliminado correctamente de la organización.
Ejemplo:

enableProviderActionType: ComponentAction<IdentityProvider>Controla el interruptor de activación/desactivación de los proveedores. Los proveedores desactivados permanecen configurados, pero los usuarios no pueden autenticarse a través de ellos.Propiedades:
  • disabled - Deshabilita el interruptor
  • onBefore(provider) - Se ejecuta antes de activar o desactivar. Devuelve false para evitar el cambio de estado.
  • onAfter(provider) - Se ejecuta después de que el proveedor se haya habilitado o deshabilitado correctamente.
Ejemplo:

Props de personalización

Las props de personalización te permiten adaptar el componente a tu marca, configuración regional y requisitos de validación sin modificar el código fuente.
PropiedadTipoDescripción
schemaSsoProviderTableSchemaValidación del campo de confirmación.
customMessagesPartial<SsoProviderTableMessages>Sobrescrituras de texto para i18n.
stylingComponentStyling<SsoProviderTableClasses>Variables CSS y sobrescrituras de clases.
schemaDefine reglas de validación personalizadas para los diálogos de confirmación (por ejemplo, escribe el nombre del proveedor para confirmar la eliminación).
Todos los campos del esquema admiten: regex, errorMessagedelete.providerName - Confirmación de eliminación permanente remove.providerName - Confirmación de eliminación de la organización

customMessagesPersonaliza todos los textos y traducciones. Todos los campos son opcionales y usan valores predeterminados si no se especifican.
header - Encabezado del componente
  • title, description, create_button_text
table - Vista de tabla
  • empty_message
  • columns.name, columns.strategy, columns.status
  • actions.edit_button_text, actions.delete_button_text, actions.remove_button_text
delete.modal - Confirmación de eliminación
  • title, description
  • field.label, field.placeholder, field.error
  • actions.cancel_button_text, actions.delete_button_text
remove.modal - Confirmación para quitar de la organización
  • title, description
  • actions.cancel_button_text, actions.remove_button_text
notifications - Respuestas de la API
  • provider_delete_success, provider_delete_error
  • provider_remove_success, provider_enable_success, provider_disable_success

stylingPersonaliza la apariencia con variables CSS y sobrescrituras de clases. Compatible con estilos según el tema.
Variables - propiedades personalizadas de CSS
  • common - Se aplica a todos los temas
  • light - Solo para el tema claro
  • dark - Solo para el tema oscuro
Clases - sobrescrituras de clases del componente
  • SsoProviderTable-header
  • SsoProviderTable-table
  • SsoProviderTable-row
  • SsoProviderTable-deleteModal
  • SsoProviderTable-removeModal

Personalización avanzada

El componente SsoProviderTable está compuesto por subcomponentes y hooks más pequeños. Puedes importarlos individualmente para crear flujos de trabajo personalizados de gestión de proveedores si utilizas shadcn.

Subcomponentes disponibles

Para casos de uso avanzados, puedes importar subcomponentes individuales para crear interfaces de gestión de proveedores personalizadas. Esto resulta útil cuando necesitas incrustar la tabla en un diseño diferente o personalizar el renderizado de filas.
ComponenteDescripción
ProviderRowFila individual del proveedor con acciones
ProviderDeleteModalModal de confirmación para la eliminación permanente
ProviderRemoveModalModal de confirmación para quitar de la organización
ProviderStatusToggleComponente interruptor para habilitar o deshabilitar
ProviderStrategyIconRenderizador del icono de estrategia (Okta, SAML, etc.)

Hooks disponibles

Estos hooks proporcionan la lógica subyacente sin ninguna interfaz de usuario. Úsalos para crear interfaces completamente personalizadas mientras aprovechas la integración con la API de Auth0.
HookDescripción
useSsoProviderTableCarga y gestión de la lista de proveedores
useSsoProviderTableLogicEstado de interacción de la interfaz de usuario + manejadores (modales, acciones)