Configuración de la autenticación

Aprende cómo funciona la autenticación en MakerKit y cómo configurarla.

La forma en que quieres que tus usuarios se autentiquen puede controlarse mediante la configuración.

Si abres la configuración global en src/configuration.ts, encontrarás el objeto auth:

import type { Provider } from '@supabase/gotrue-js/src/lib/types';

auth: {
  requireEmailConfirmation: false,
  providers: {
    emailPassword: true,
    phoneNumber: false,
    emailLink: false,
    oAuth: ['google'] as Provider[],
  },
}

Como puedes ver, el objeto providers se puede configurar para mostrar solo los métodos de autenticación que queremos utilizar.

  1. Por ejemplo, si establecemos tanto phoneNumber como emailLink en true, las páginas de autenticación mostrarán los formularios de autenticación Email Link y Phone Number.
  2. En cambio, si establecemos emailPassword en false, eliminaremos el formulario email/password de las páginas de autenticación y de perfil de usuario.

Exigir la verificación del correo electrónico

Este ajuste debe coincidir con lo que hayas configurado en Supabase. Si exiges la confirmación del correo electrónico antes de que tus usuarios puedan iniciar sesión, tendrás que cambiar el siguiente indicador en tu configuración:

auth: {
  requireEmailConfirmation: false,
}

Cuando el indicador está establecido en true, el usuario no será redirigido al flujo de onboarding, sino que verá una alerta de éxito pidiéndole que confirme su correo electrónico. Tras la confirmación, podrá iniciar sesión.

Cuando el indicador está establecido en false, la aplicación lo redirigirá directamente al flujo de onboarding.

Correos electrónicos enviados por Supabase

Supabase pone en marcha una instancia de InBucket a la que se envían todos los correos electrónicos: ahí encontrarás los correos relacionados con el restablecimiento de contraseña, los enlaces de inicio de sesión y las verificaciones de correo electrónico.

Para acceder a la instancia de InBucket, puedes ir a la siguiente URL: http://localhost:54324/. Guarda esta URL, la usarás con mucha frecuencia.