Utiliser l’IA pour intégrer Auth0
Utiliser l’IA pour intégrer Auth0
Si vous utilisez un assistant de codage IA comme Claude Code, Cursor ou GitHub Copilot, vous pouvez ajouter l’authentification Auth0 automatiquement en quelques minutes à l’aide d’Agent Skills.Installer :Demandez ensuite à votre assistant IA :Votre assistant IA créera automatiquement votre application Auth0, récupérera les informations d’identification, ajoutera la dépendance au SDK auth0_flutter, configurera web/index.html, définira les URL de callback et implémentera les flux de connexion et de déconnexion. Documentation complète d’Agent Skills →
Prérequis : Avant de commencer, assurez-vous d’avoir installé ce qui suit :
- Flutter 3.0 ou une version ultérieure, configuré pour le Web
- Dart 2.17 ou une version ultérieure
- Une connaissance de base de l’interface de ligne de commande Flutter
flutter --versionSi vous n’avez pas d’application Web Flutter, créez-en une : flutter create --platforms=web my_appPour commencer
1
Créer un nouveau projet
Créez une nouvelle application Flutter Web pour ce guide de démarrage rapide :Ouvrez le projet :
2
Installer le SDK Flutter d’Auth0
Ajoutez le SDK Flutter d’Auth0 à votre projet à l’aide de la CLI Flutter :Le SDK nécessite que la bibliothèque Auth0 SPA JS soit chargée dans votre application Web. Ajoutez la balise
<script> suivante dans votre fichier web/index.html, avant la balise de fermeture </body> :web/index.html
3
Configurez votre application Auth0
Ensuite, vous devez créer une nouvelle application sur votre tenant Auth0.Vous pouvez le faire automatiquement en exécutant une commande CLI, ou manuellement dans le Dashboard :
- CLI
- Dashboard
Exécutez la commande shell suivante à la racine de votre projet pour créer une application Auth0 :macOS / Linux :Windows (PowerShell) :Copiez les valeurs domain et client_id dans la sortie. Vous en aurez besoin à l’étape suivante.
Si vous n’avez pas encore installé l’Auth0 CLI, exécutez :Ensuite, ouvrez une session avec
auth0 login.4
Configurer le SDK
Créez une instance de la classe
Auth0Web à l’aide des valeurs de domaine et d’ID client d’Auth0.Créez un nouveau fichier lib/auth0_service.dart :lib/auth0_service.dart
5
Créer la vue principale
Remplacez le contenu de Points clés :
lib/main.dart par le code suivant :lib/main.dart
onLoad()est appelé dansinitState()pour traiter le callback d’authentificationloginWithRedirect()redirige les utilisateurs vers la page de connexion universelle d’Auth0logout()supprime la session et redirige vers votre application- Les informations du profil utilisateur sont accessibles par
credentials.user
6
Lancez votre application
Lancez votre application Web Flutter sur le port 3000 :
Flutter 3.24.0 et les versions plus récentes prennent en charge la compilation WASM pour améliorer les performances :
Point de vérificationVous devriez maintenant avoir une page de connexion Auth0 entièrement fonctionnelle à l’adresse http://localhost:3000. Lorsque vous :
- Cliquez sur “Log In” - vous êtes redirigé vers la page Universal Login d’Auth0
- Terminez l’authentification - vous êtes redirigé vers votre application
- Cliquez sur “View Profile” - vous voyez les renseignements de votre compte
- Cliquez sur “Log Out” - vous êtes déconnecté à la fois de votre application et d’Auth0
Utilisation avancée
Appel d’API protégées
Appel d’API protégées
Configurez le SDK pour demander un jeton d’accès afin d’appeler des API protégées :Utilisez le jeton d’accès pour appeler votre API :
lib/auth0_service.dart
Paramètres de connexion personnalisés
Paramètres de connexion personnalisés
Transmettez des paramètres supplémentaires au flux de connexion :
Gestion des erreurs de connexion
Gestion des erreurs de connexion
Mettez en place une gestion appropriée des erreurs en cas d’échec de l’authentification :
Authentification silencieuse
Authentification silencieuse
Vérifiez si l’utilisateur est déjà authentifié sans afficher la page de connexion :
Dépannage
Problèmes courants et solutions
Problèmes courants et solutions
Erreur « URL de rappel non conforme »
Problème : L’URL de rappel ne correspond pas à celle configurée dans Auth0.Solution : Assurez-vous que l’URL de rappel dans votre code correspond exactement à celle indiquée dans le tableau de bord Auth0 :- Accédez à Auth0 Dashboard → Applications → Your App → Settings
- Vérifiez que Allowed Callback URLs inclut
http://localhost:3000 - L’URL doit correspondre exactement (sans barre oblique finale, sauf si elle est aussi incluse dans le code)
L’authentification ne fonctionne pas
Problème : Le bouton de connexion ne fait rien ou l’authentification échoue.Solution : Vérifiez que le script Auth0 SPA JS est bien chargé dansweb/index.html :</body>.L’utilisateur est déconnecté après l’actualisation de la page
Problème : La session de l’utilisateur n’est pas conservée lors du rechargement de la page.Solutions :- Assurez-vous que Allowed Web Origins inclut
http://localhost:3000dans le tableau de bord Auth0 - Utilisez
cacheLocation: CacheLocation.localStoragelors de la création de l’instance Auth0Web - Vérifiez que
onLoad()est appelé dans leinitState()de votre widget
Erreur « État invalide »
Problème : L’état ne correspond pas pendant le rappel d’authentification.Solutions :- Videz le cache du navigateur et le stockage local
- Assurez-vous de ne pas ouvrir plusieurs onglets pendant la connexion
- Vérifiez que votre URL de rappel est correcte
Erreurs CORS dans la console du navigateur
Problème : Erreurs de partage de ressources entre origines croisées.Solution :- Ajoutez
http://localhost:3000à Allowed Web Origins dans le tableau de bord Auth0 - Assurez-vous d’utiliser le port 3000 (conformément à votre configuration)
Prochaines étapes
- Démarrage rapide de l’application native Flutter - Créez une application mobile native avec Auth0
- Appeler des API protégées - Utilisez des jetons d’accès pour appeler vos API d’arrière-plan
- Personnaliser Universal Login - Adaptez l’expérience de connexion à votre image de marque
- Ajouter des connexions sociales - Activez Google, GitHub et d’autres modes de connexion sociale
- Mettre en œuvre l’AMF - Ajoutez l’authentification multifacteur
Ressources
- Auth0 Flutter SDK GitHub - Code source et exemples
- Documentation Flutter - Pour en savoir plus sur Flutter
- Communauté Auth0 - Obtenez de l’aide auprès de la communauté