ID de la région
Le REGION_ID
est un code abrégé que Google attribue en fonction de la région que vous sélectionnez lors de la création de votre application. Le code ne correspond pas à un pays ou une province, même si certains ID de région peuvent ressembler aux codes de pays et de province couramment utilisés. Pour les applications créées après février 2020, REGION_ID.r
est inclus dans les URL App Engine. Pour les applications existantes créées avant cette date, l'ID de région est facultatif dans l'URL.
En savoir plus sur les ID de région
Ajoutez un flux de connexion utilisateur à votre service Web qui utilise Firebase Authentication.
Au cours de cette étape du guide, vous mettez à jour votre service Web pour authentifier les utilisateurs et pour récupérer et afficher les informations de l'utilisateur après son authentification. Notez que, pour cette étape, les temps de demande du site seront toujours globaux et non spécifiques à l'utilisateur.
Avant de commencer
Si vous avez suivi toutes les étapes précédentes de ce guide, ignorez cette section. Sinon, effectuez l'une des opérations suivantes :
Commencez par Créer une application Python 3 et suivez toutes les étapes menant à celle-ci.
Si vous avez déjà un projet Google Cloud, vous pouvez continuer en téléchargeant une copie du service Web et en ajoutant Firebase :
Téléchargez le dépôt de l'exemple d'application à l'aide de Git :
git clone https://github.com/GoogleCloudPlatform/python-docs-samples
Vous pouvez également télécharger l'exemple en tant que fichier zip et l'extraire.
Accédez au répertoire contenant une copie des fichiers de l'étape précédente :
cd python-docs-samples/appengine/standard_python3/building-an-app/building-an-app-2
Ajoutez Firebase à votre projet Google Cloud et service Web.
Ajouter des méthodes d'authentification Firebase
Firebase fournit des méthodes JavaScript et des variables que vous pouvez utiliser pour configurer le comportement de connexion de votre service Web. Pour ce service Web, ajoutez une fonction de déconnexion, une variable qui configure l'interface utilisateur de la page de connexion et une fonction contrôlant les modifications apportées lorsqu'un utilisateur se connecte ou déconnecte.
Pour ajouter les comportements requis pour un flux d'authentification, remplacez la méthode d'écoute d'événements actuelle du fichier static/script.js
par le code suivant :
Notez que la méthode onAuthStateChanged()
, qui contrôle les modifications apportées lorsqu'un utilisateur se connecte ou se déconnecte, stocke le jeton d'ID de l'utilisateur en tant que cookie.
Ce jeton d'ID est un jeton unique que Firebase génère automatiquement lorsqu'un utilisateur s'est connecté avec succès. Il est utilisé par le serveur pour authentifier l'utilisateur.
Mettre à jour votre service Web pour utiliser des jetons
Vérifiez l'identité des utilisateurs sur le serveur à l'aide de leur jeton d'ID Firebase unique, puis déchiffrez leur jeton pour leur imprimer leurs données.
Pour utiliser le jeton d'ID Firebase, procédez comme suit :
Récupérez, validez et déchiffrez le jeton dans la méthode
root
de votre fichiermain.py
:Assurez-vous que votre fichier
requirements.txt
inclut toutes les dépendances nécessaires :
Tester votre service Web
Testez votre service Web en l'exécutant localement dans un environnement virtuel :
Exécutez les commandes suivantes dans le répertoire principal de votre projet pour installer de nouvelles dépendances et exécuter votre service Web. Si vous n'avez pas configuré d'environnement virtuel pour les tests en local, consultez la section Tester votre service Web.
pip install -r requirements.txt python main.py
Saisissez l'adresse suivante dans votre navigateur Web pour afficher votre service Web :
http://localhost:8080
Déployer votre service Web
Maintenant que l'authentification fonctionne localement, vous pouvez redéployer votre service Web dans App Engine.
Exécutez la commande suivante à partir du répertoire racine de votre projet, où se trouve le fichier app.yaml
:
gcloud app deploy
Tout le trafic est automatiquement acheminé vers la nouvelle version que vous avez déployée.
Pour plus d'informations sur la gestion des versions, consultez la documentation sur la gestion des services et des versions.
Affichez votre service :
Pour lancer rapidement votre navigateur et accéder à votre service Web à l'adresse https://PROJECT_ID.REGION_ID.r.appspot.com
, exécutez la commande suivante :
gcloud app browse
Étapes suivantes
Maintenant que vous avez configuré l'authentification des utilisateurs, vous êtes prêt à découvrir comment mettre à jour votre service Web pour personnaliser les données des utilisateurs authentifiés.