Passer au contenu principal
Auth0 vous permet d’ajouter l’authentification et de pouvoir accéder aux informations relatives au profil de l’utilisateur dans votre application. Ce guide explique comment intégrer Auth0 à une application Python Django, à l’aide de la trousse SDK Authlib.
1

Configuration d’Auth0

Pour utiliser les services Auth0, vous devez avoir une application installée dans Auth0 Dashboard. L’application Auth0 est l’endroit où vous allez configurer le fonctionnement de l’authentification pour le projet que vous développez.

Configurer une application

Utilisez le sélecteur interactif pour créer une nouvelle application Auth0 ou sélectionner une application existante qui représente le projet avec lequel vous souhaitez effectuer l’intégration. Dans Auth0, chaque application se voit attribuer un identifiant client unique alphanumérique que votre code d’application utilisera pour appeler les API Auth0 via la trousse SDK.Tous les paramètres que vous configurez à l’aide de ce guide de démarrage rapide seront automatiquement mis à jour pour votre application dans le Tableau de bord, qui est l’endroit où vous pourrez gérer vos applications à l’avenir.Si vous préférez explorer une configuration complète, consultez plutôt un exemple d’application.

Configurer les URL de rappel

Une URL de rappel est une URL intégrée dans votre application vers laquelle vous souhaitez qu’Auth0 redirige les utilisateurs après leur authentification. Si elle n’est pas définie, les utilisateurs ne seront pas redirigés vers votre application après s’être connectés.
Si vous suivez notre exemple de projet, définissez cette URL comme suit : http://localhost:3000``/callback.

Configuration des URL de déconnexion

Une URL de déconnexion est une URL intégrée dans votre application vers laquelle vous souhaitez qu’Auth0 redirige les utilisateurs après leur déconnexion. Si elle n’est pas définie, les utilisateurs ne pourront pas se déconnecter de votre application et recevront un message d’erreur.
Si vous suivez notre exemple de projet, définissez cette URL comme suit : http://localhost:3000.
2

Installer les dépendances

Pour cette intégration, vous ajouterez plusieurs dépendances de bibliothèque, telles qu’Authlib. Créez un fichier requirements.txt dans votre répertoire de projet et incluez ce qui suit :
authlib ~= 1.0
django ~= 4.0
python-dotenv ~= 0.19
requests ~= 2.27
Exécutez la commande suivante depuis votre interface système pour accéder à ces dépendances :pip install -r requirements.txt
3

Configurez votre fichier .env.

Ensuite, créez un fichier .env dans votre répertoire de projet. Ce fichier contiendra les clés de vos clients et d’autres détails de configuration.
AUTH0_CLIENT_ID={yourClientId}
AUTH0_CLIENT_SECRET={yourClientSecret}
AUTH0_DOMAIN={yourDomain}
4

Création d’une application

Si vous avez déjà une application Django installée, passez à l’étape suivante. Pour un nouveau projet d’application, exécutez la commande suivante :django-admin startproject webappexamplePlacez-vous dans le nouveau dossier du projet :cd webappexample
5

Mettre à jour settings.py

Ouvrez le fichier webappexample/settings.py pour examiner les valeurs .env.En haut du fichier, ajoutez les importations os et dotenv.Ensuite, sous la définition BASE_DIR, ajoutez la variable TEMPLATE_DIR.Ensuite, trouvez la variable TEMPLATES et mettez à jour la valeur DIRS pour y ajouter notre chaîne TEMPLATE_DIR. Cette action détermine le chemin des fichiers modèles, que vous créerez à une étape future. Ne modifiez aucun autre élément de ce tableau.À la fin de ce fichier, ajoutez le code pour charger la configuration d’Auth0.
6

Configurez votre application

Pour commencer à créer votre application, ouvrez le fichier webappexample/views.py dans votre IDE.Importez toutes les bibliothèques nécessaires à votre application.Vous pouvez maintenant configurer Authlib pour gérer l’authentification de votre application avec Auth0.Découvrez les options de configuration possibles pour la méthode Authlib’s OAuth register() à partir de leur documentation.
7

Configurer vos gestionnaires de route

Dans cet exemple, vous allez ajouter quatre routes pour votre application : connexion, callback, déconnexion et index.
  • login – Lorsque les visiteurs de votre application se rendent sur la route /login ils seront redirigés vers Auth0 pour commencer le processus d’authentification.
  • callback – Après la connexion de vos utilisateurs à Auth0, ceux-ci reviendront à votre application à la route /callback. Cette route enregistre la session de l’utilisateur et permet de ne plus avoir à se reconnecter lorsqu’il revient.
  • logout – La route /logout permet aux utilisateurs de se déconnecter de votre application. Cette route efface la session de l’utilisateur dans votre application et redirige vers le point de terminaison de déconnexion d’Auth0 pour s’assurer que la session n’est plus enregistrée. Ensuite, l’application redirige l’utilisateur vers votre route d’accueil.
  • index – La route d’accueil affichera les détails de l’utilisateur authentifié ou permettra aux visiteurs de se connecter.
8

Enregistrer vos routes

Remplacez le contenu de votre fichier webappexample/urls.py par le code à droite pour vous connecter à ces nouvelles routes.Cela dirigera les routes /login, /callback, /logout et / vers les gestionnaires appropriés.
9

Ajouter des modèles

Vous allez ensuite créer un fichier modèle utilisé dans la route de la page d’accueil.Créez un nouveau sous-répertoire dans le dossier webappexample nommé templates, et créez un fichier index.html.Le fichier index.html contiendra un code modèle pour afficher les informations de l’utilisateur s’il est connecté, ou pour lui présenter un bouton de connexion s’il ne l’est pas.
10

Exécuter votre application

Vous êtes prêts à exécuter votre application! À partir de votre Directory de projet, ouvrez un interface et utilisez :
python3 manage.py migrate
python3 manage.py runserver 3000
Votre application devrait maintenant être prête à s’ouvrir à partir de votre navigateur à l’adresse http://localhost:3000.
Point de contrôle
Visitez http://localhost:3000 pour des raisons de vérification. Un bouton de connexion devrait vous permettre de vous connecter à Auth0, puis de revenir à votre application pour consulter les informations relatives à votre profil.

Étapes suivantes

Beau travail! Si vous en êtes arrivé là, vous devriez avoir la connexion, la déconnexion et les informations de profil utilisateur actives dans votre application.Cela conclut notre tutoriel de démarrage rapide, mais il y a tellement plus à explorer. Pour en savoir plus sur ce que vous pouvez faire avec Auth0, consultez :
  • Auth0 Dashboard : apprenez à configurer et gérer votre locataire et vos applications Auth0
  • Auth0 Marketplace : découvrez des intégrations que vous pouvez activer pour étendre les fonctionnalités d’Auth0
I