Skip to main content

Utiliser l’IA pour intégrer Auth0

Si vous utilisez un assistant IA de programmation comme Claude Code, Cursor ou GitHub Copilot, vous pouvez ajouter l’authentification Auth0 automatiquement en quelques minutes à l’aide d’Agent Skills.Installer :
Ensuite, demandez à votre assistant IA :
Votre assistant IA créera automatiquement votre application Auth0, récupérera les identifiants, installera auth0/login, configurera les variables d’environnement et ajoutera les routes d’authentification. Documentation complète d’Agent Skills →
Prérequis : Avant de commencer, assurez-vous d’avoir installé les éléments suivants :Vérifiez l’installation : php --version && composer --version

Pour commencer

Ce Quickstart montre comment ajouter l’authentification Auth0 à une application Laravel. Vous y configurerez une connexion sécurisée, le logout, des routes protégées et l’accès au profil utilisateur à l’aide du Auth0 Laravel SDK.
1

Créer un nouveau projet Laravel

Si vous avez déjà une application Laravel, passez à l’étape 2.Créez un nouveau projet Laravel :
Ouvrez le dossier du projet :
2

Installer l’Auth0 Laravel SDK

Exécutez la commande suivante dans le répertoire de votre projet afin d’installer le Auth0 Laravel SDK :
Ensuite, publiez le fichier de configuration du SDK :
3

Configurer les identifiants Auth0

Vous devez créer une application Auth0 et ajouter vos identifiants au projet. Choisissez l’une des méthodes suivantes :
Créez une Auth0 App et copiez les identifiants .env préremplis avec les bonnes valeurs de configuration.Ajoutez ces valeurs au fichier .env de votre projet :
4

Ajouter des routes d’authentification

Le SDK Auth0 enregistre automatiquement les routes suivantes pour votre application — aucune configuration supplémentaire des routes n’est nécessaire :
Si votre application utilise Laravel Breeze, Fortify ou Jetstream, les routes /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.
Mettez à jour routes/web.php pour ajouter votre route d’accueil :
routes/web.php
5

Protégez les routes avec un middleware

Utilisez le middleware auth de Laravel pour exiger l’authentification sur toute route. Vous pouvez aussi appliquer des permissions précises à l’aide du middleware can :
routes/web.php
Les autorisations sont définies dans les paramètres de votre API Auth0 et attribuées aux utilisateurs par l’intermédiaire de rôles. Consultez le contrôle d’accès basé sur les rôles pour plus de détails.
6

Lancez votre application

Votre application est accessible à http://localhost:8000. Si le port 8000 est déjà utilisé, exécutez 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.
VérificationOuvrez http://localhost:8000 dans votre navigateur. Essayez ces routes pour vérifier votre intégration :

Résolution des problèmes

Cause : L’URL de rappel envoyée à Auth0 ne correspond à aucune URL dans la liste Allowed Callback URLs de votre application.Correctif :
  1. Accédez à Auth0 DashboardApplications > Applications → votre application → Settings
  2. Ajoutez http://localhost:8000/callback à Allowed Callback URLs
  3. Cliquez sur Save Changes
Assurez-vous qu’il n’y a pas de barre oblique à la fin et que le port correspond à celui de votre serveur en cours d’exécution.
Cause : Mauvaise configuration de la session ou du cookie — la session Laravel ne conserve pas le paramètre state entre la redirection de connexion et l’URL de rappel.Correctif :
  1. Assurez-vous que SESSION_DRIVER dans .env est défini à file, database ou redis (et non array)
  2. Videz la configuration et le cache :
  1. Redémarrez votre serveur de développement
Cause : Le SDK ne trouve pas vos identifiants Auth0.Correctif : Assurez-vous que l’un des éléments suivants existe à la racine de votre projet :
  • Un fichier .env avec AUTH0_DOMAIN, AUTH0_CLIENT_ID et AUTH0_CLIENT_SECRET
  • Un fichier .auth0.app.json généré par l’Auth0 CLI
Après avoir mis à jour .env, videz le cache de configuration :
Cause : Les routes du SDK ne sont pas enregistrées, généralement parce que le fournisseur de services ne s’est pas chargé.Correctif :
  1. Assurez-vous d’avoir exécuté php artisan vendor:publish --tag auth0
  2. Vérifiez que la découverte automatique des packages est activée (vérifiez composer.json pour "dont-discover": [])
  3. Exécutez php artisan route:list | grep auth0 pour confirmer que les routes sont enregistrées
  4. Si des routes sont manquantes, enregistrez manuellement le fournisseur de services. Dans Laravel 11+, ajoutez-le à bootstrap/providers.php :
bootstrap/providers.php

Utilisation avancée

Vous pouvez mettre à jour les informations utilisateur à l’aide de l’Auth0 Management API. Tous les points de terminaison de la Management API sont accessibles via la méthode Auth0::management() du SDK.Avant d’effectuer des appels à la Management API, autorisez votre application à accéder à la Management API :
  1. Accédez au Auth0 DashboardApplications > APIsAuth0 Management API
  2. Sélectionnez l’onglet Machine to Machine Applications
  3. Autorisez votre application Laravel et accordez les scopes read:users et update:users
routes/web.php
La référence complète de toutes les méthodes de la Management API est offerte dans la documentation du SDK.
Le SDK prend en charge les modèles utilisateur personnalisés et les repositories, ce qui vous permet de stocker et de récupérer des utilisateurs dans votre propre base de données tout en conservant Auth0 comme fournisseur d’identité.Consultez User Repositories and Models pour obtenir le guide complet de mise en œuvre.
Le SDK déclenche des événements à des moments clés du cycle de vie de l’authentification — à la connexion, à la déconnexion, à l’actualisation du token, et plus encore — ce qui vous permet de personnaliser entièrement son comportement sans modifier le code de base du SDK.Consultez Hooking Events pour obtenir la liste complète des événements et des exemples de mise en œuvre.
Utilisez Auth0 RBAC pour attribuer des permissions aux utilisateurs par l’intermédiaire de rôles, puis les appliquer dans Laravel à l’aide du middleware can :
routes/web.php
Pour configurer RBAC :
  1. Accédez au Auth0 DashboardApplications > APIs → votre API → Permissions
  2. Ajoutez les permissions dont votre application a besoin (p. ex. admin:dashboard, read:messages)
  3. Accédez à User Management > Roles, créez un rôle et attribuez-lui des permissions
  4. Attribuez le rôle aux utilisateurs à partir de leur page de profil
Consultez Role-Based Access Control pour le guide complet.

Prochaines étapes

Maintenant que l’authentification fonctionne dans votre application Laravel, explorez davantage les fonctionnalités d’Auth0 :