Autenticación y administración
Configura Better Auth, identidad, organización personal y la aplicación administrativa independiente con MFA.
Sincronizado con el commit
7d452a6del starter.
Sushi SaaS usa Better Auth para email/contraseña, verificación, recuperación, sesiones, Google OAuth opcional y doble factor. Cada alta recibe una organización personal; los equipos ya están implementados.
Configura BETTER_AUTH_SECRET, BETTER_AUTH_URL, NEXT_PUBLIC_AUTH_BASE_URL y la URL web. Google es opcional. En producción, registro y flujos sensibles exigen límite distribuido con Redis y Turnstile. Resend entrega correos; en local se pueden registrar enlaces si falta proveedor o AUTH_DEV_EMAIL_LINKS=true, valor rechazado en producción.
Identidad y permisos
- El ID string de Better Auth autentica;
user.uuides la identidad pública de dominio. - Email y proveedor son únicos, pero nunca se autoriza por email.
- Roles de organización (
owner,admin,member) permiten acciones; entitlements controlan funciones y límites. - Las rutas autentican antes de consultar y el cliente traduce códigos estables, nunca mensajes internos.
Administración separada
pnpm dev:admin usa el puerto 3001. Despliega apps/admin aparte, con origen y URL de auth propios. Promueve operadores con pnpm admin:promote: admin_ro lee y admin_rw modifica. Se exige MFA y las escrituras generan auditoría. Los roles de organización no son roles de plataforma.
Antes de lanzar prueba alta, verificación, acceso, recuperación, callback Google, revocación de sesiones, MFA y ambos permisos admin. Sigue la guía específica de Configuración y acceso a la consola para el despliegue y el alta de operadores.
Base de datos y migraciones
Trabaja con seguridad con PostgreSQL, el esquema Drizzle, la base de pruebas y el ejecutor de migraciones de producción.
Organizaciones, equipos y tenancy
Configura espacios personales, roles, invitaciones, límites de plazas, aislamiento de tenant, créditos compartidos y facturación por organización.