Usa la IA para integrar Auth0
Usa la IA para integrar Auth0
auth0/login, configurará las variables de entorno y registrará las rutas de autenticación. Documentación completa de agent skills →Primeros pasos
Crear un nuevo proyecto de Laravel
Instala el SDK de Auth0 para Laravel
Configurar las credenciales de Auth0
- Configuración rápida (recomendada)
- CLI
- Dashboard
.env con los valores correctos.Agregue estos valores al archivo .env de su proyecto:Añadir rutas de autenticación
| Ruta | Propósito |
|---|---|
/login | Inicia el flujo de inicio de sesión de Auth0 |
/logout | Cierra la sesión del usuario y redirige a Auth0 |
/callback | Procesa el callback de autenticación de Auth0 |
/login, /logout y /callback del SDK pueden entrar en conflicto con las rutas registradas por esos paquetes. Consulta el SDK README para obtener instrucciones sobre el registro manual de rutas.routes/web.php para agregar tu ruta de inicio:Protege rutas con middleware
auth de Laravel para exigir autenticación en cualquier ruta. También puedes exigir permisos específicos mediante el middleware can:Ejecuta la aplicación
php artisan serve --port=8001 y actualiza los valores de Allowed Callback URLs y Allowed Logout URLs de tu aplicación de Auth0 para que usen el nuevo puerto.- http://localhost:8000/login — inicia el flujo de inicio de sesión de Auth0
- http://localhost:8000/private — redirige al inicio de sesión si no has iniciado sesión; muestra un mensaje de bienvenida cuando has iniciado sesión
- http://localhost:8000/logout — cierra la sesión y vuelve a la página de inicio
Solución de problemas
Error de URL de callback no coincidente
Error de URL de callback no coincidente
- Ve al Auth0 Dashboard → Applications > Applications → tu aplicación → Settings
- Agrega
http://localhost:8000/callbacka Allowed Callback URLs - Haz clic en Save Changes
Error de state no válido / CSRF después de iniciar sesión
Error de state no válido / CSRF después de iniciar sesión
- Asegúrate de que
SESSION_DRIVERen.envesté configurado comofile,databaseoredis(noarray) - Borra la configuración y la caché:
- Reinicia tu servidor de desarrollo
AUTH0_DOMAIN no está configurado o las credenciales no se cargan
AUTH0_DOMAIN no está configurado o las credenciales no se cargan
- Un archivo
.envconAUTH0_DOMAIN,AUTH0_CLIENT_IDyAUTH0_CLIENT_SECRET - Un archivo
.auth0.app.jsongenerado por Auth0 CLI
.env, borra la caché de configuración:404 en /login, /logout o /callback
404 en /login, /logout o /callback
- Confirma que ejecutaste
php artisan vendor:publish --tag auth0 - Verifica que la autodetección del paquete esté habilitada (revisa
composer.jsonpara"dont-discover": []) - Ejecuta
php artisan route:list | grep auth0para confirmar que las rutas estén registradas - Si faltan rutas, registra manualmente el proveedor de servicios. En Laravel 11+, agrégalo a
bootstrap/providers.php:
Uso avanzado
Management API — actualizar los metadatos del usuario
Management API — actualizar los metadatos del usuario
Auth0::management() del SDK.Antes de hacer llamadas a la Management API, autorice a su aplicación para acceder a la Management API:- Vaya al Auth0 Dashboard → Applications > APIs → Management API
- Seleccione la pestaña Machine to Machine Applications
- Autorice su aplicación de Laravel y conceda los alcances
read:usersyupdate:users
Modelos y repositorios de usuario personalizados
Modelos y repositorios de usuario personalizados
Escuchar eventos del SDK
Escuchar eventos del SDK
Control de acceso basado en roles (RBAC)
Control de acceso basado en roles (RBAC)
can:- Vaya al Auth0 Dashboard → Applications > APIs → su API → Permissions
- Añada los permisos que necesita su aplicación (por ejemplo,
admin:dashboard,read:messages) - Vaya a User Management > Roles, cree un rol y asígnele permisos
- Asigne el rol a los usuarios desde su página de perfil
Próximos pasos
- Auth0 Dashboard — Configura y administra tu inquilino de Auth0 y tus aplicaciones
- laravel-auth0 SDK — Documentación completa del SDK e integraciones avanzadas
- Role-Based Access Control — Asigna permisos a los usuarios mediante roles
- Auth0 Marketplace — Descubre integraciones para ampliar la funcionalidad de Auth0