Utiliser l’IA pour intégrer Auth0
Utiliser l’IA pour intégrer Auth0
auth0/login, configurera les variables d’environnement et ajoutera les routes d’authentification. Documentation complète d’Agent Skills →Pour commencer
Créer un nouveau projet Laravel
Installer l’Auth0 Laravel SDK
Configurer les identifiants Auth0
- Configuration rapide (recommandée)
- CLI
- Dashboard
.env préremplis avec les bonnes valeurs de configuration.Ajoutez ces valeurs au fichier .env de votre projet :Ajouter des routes d’authentification
/login, /logout et /callback du SDK peuvent entrer en conflit avec les routes enregistrées par ces packages. Consultez le README du SDK pour savoir comment enregistrer manuellement les routes.routes/web.php pour ajouter votre route d’accueil :Protégez les routes avec un middleware
middleware auth de Laravel pour exiger l’authentification sur toute route. Vous pouvez aussi appliquer des permissions précises à l’aide du middleware can :Lancez votre application
php artisan serve --port=8001 et mettez à jour les Allowed Callback URLs et Allowed Logout URLs de votre application Auth0 afin d’utiliser le nouveau port.- http://localhost:8000/login — déclenche le flux de connexion Auth0
- http://localhost:8000/private — redirige vers la page de connexion si l’utilisateur n’est pas authentifié ; affiche un message de bienvenue lorsqu’il est connecté
- http://localhost:8000/logout — déconnecte l’utilisateur et le ramène à la page d’accueil
Résolution des problèmes
Erreur de non-correspondance d’URL de rappel
Erreur de non-correspondance d’URL de rappel
- Accédez à Auth0 Dashboard → Applications > Applications → votre application → Settings
- Ajoutez
http://localhost:8000/callbackà Allowed Callback URLs - Cliquez sur Save Changes
Erreur invalid state / CSRF après la connexion
Erreur invalid state / CSRF après la connexion
- Assurez-vous que
SESSION_DRIVERdans.envest défini àfile,databaseouredis(et nonarray) - Videz la configuration et le cache :
- Redémarrez votre serveur de développement
AUTH0_DOMAIN non défini ou identifiants non chargés
AUTH0_DOMAIN non défini ou identifiants non chargés
- Un fichier
.envavecAUTH0_DOMAIN,AUTH0_CLIENT_IDetAUTH0_CLIENT_SECRET - Un fichier
.auth0.app.jsongénéré par l’Auth0 CLI
.env, videz le cache de configuration :Erreur 404 sur /login, /logout ou /callback
Erreur 404 sur /login, /logout ou /callback
- Assurez-vous d’avoir exécuté
php artisan vendor:publish --tag auth0 - Vérifiez que la découverte automatique des packages est activée (vérifiez
composer.jsonpour"dont-discover": []) - Exécutez
php artisan route:list | grep auth0pour confirmer que les routes sont enregistrées - Si des routes sont manquantes, enregistrez manuellement le fournisseur de services. Dans Laravel 11+, ajoutez-le à
bootstrap/providers.php:
Utilisation avancée
Management API — mettre à jour les métadonnées utilisateur
Management API — mettre à jour les métadonnées utilisateur
Auth0::management() du SDK.Avant d’effectuer des appels à la Management API, autorisez votre application à accéder à la Management API :- Accédez au Auth0 Dashboard → Applications > APIs → Auth0 Management API
- Sélectionnez l’onglet Machine to Machine Applications
- Autorisez votre application Laravel et accordez les scopes
read:usersetupdate:users
Modèles utilisateur personnalisés et repositories
Modèles utilisateur personnalisés et repositories
Écoute des événements du SDK
Écoute des événements du SDK
Role-Based Access Control (RBAC)
Role-Based Access Control (RBAC)
can :- Accédez au Auth0 Dashboard → Applications > APIs → votre API → Permissions
- Ajoutez les permissions dont votre application a besoin (p. ex.
admin:dashboard,read:messages) - Accédez à User Management > Roles, créez un rôle et attribuez-lui des permissions
- Attribuez le rôle aux utilisateurs à partir de leur page de profil
Prochaines étapes
- Auth0 Dashboard — Configurez et gérez votre tenant Auth0 et vos applications
- laravel-auth0 SDK — Documentation complète du SDK et intégrations avancées
- Role-Based Access Control — Attribuez des permissions aux utilisateurs à l’aide de rôles
- Auth0 Marketplace — Découvrez des intégrations pour étendre les fonctionnalités d’Auth0