Comment utiliser Logto pour votre application Encore
Apprenez à utiliser Logto pour l'authentification des utilisateurs dans votre application backend Encore. Dans ce guide, nous vous montrons comment intégrer votre backend Go avec Logto.
Encore est une plateforme de développement backend qui facilite la création d'APIs et de microservices prêts pour la production.
Logto est une alternative moderne à Auth0 qui vous aide à construire l'expérience de connexion et l'identité utilisateur en quelques minutes. Il est particulièrement bien adapté pour protéger les services API construits avec Encore.
Ce guide vous montrera comment intégrer Logto avec votre application Encore pour mettre en œuvre une authentification utilisateur sécurisée et protéger vos points de terminaison d'API.
Paramètres Logto
Avant de commencer l'intégration avec Encore, vous devez configurer quelques éléments dans Logto :
-
Créez un compte sur Logto Cloud si vous n'en avez pas encore.
-
Créez une ressource API dans Logto Console, cela représente votre service API Encore
- Accédez à "Ressources API" dans Logto Console et créez une nouvelle API
- Définissez un nom et un identifiant d'API (par ex.,
https://api.encoreapp.com
) - Notez l'identifiant de l'API sur la page des détails de la ressource API, car nous en aurons besoin plus tard
- Créez une application pour votre application frontend
- Accédez à "Applications" dans Logto Console
- Créez une nouvelle application selon votre framework frontend (Nous utilisons React comme exemple, mais vous pouvez créer n'importe quelle Single-Page Application (SPA) ou application native)
- (Facultatif, nous en parlerons plus tard) Intégrez Logto avec votre application frontend selon le guide dans Logto Console.
- Notez l'ID de l'application et l'URL de l'émetteur sur la page des détails de l'application, car nous en aurons besoin plus tard
Configurer le gestionnaire d'authentification pour votre service API Encore
Implémentons maintenant l'authentification dans votre application Encore. Nous utiliserons le gestionnaire d'authentification intégré d'Encore pour valider les jetons JWT de Logto.
Ajoutez ces deux modules dans votre application Encore :
Créez auth/auth.go
et ajoutez le code suivant :
Et ensuite, vous pouvez utiliser ce gestionnaire d'authentification pour protéger vos points de terminaison API :
Frontend
Nous avons terminé notre travail dans le service API Encore. Nous devons maintenant intégrer Logto avec notre application frontend.
Vous pouvez choisir le framework que vous utilisez sur la page Logto Quick start pour intégrer Logto à votre application frontend. Dans ce guide, nous utilisons React comme exemple.
Consultez le guide Ajouter l'authentification à votre application React pour apprendre comment intégrer Logto à votre application React. Dans cet exemple, vous n'avez besoin de compléter que jusqu'à la section Intégration. Ensuite, nous montrerons comment l'application frontend peut obtenir un jeton d'accès de Logto pour accéder à l'API Encore.
Tout d'abord, mettez à jour votre LogtoConfig
en ajoutant la ressource API utilisée dans votre application Encore au champ resources
. Cela indique à Logto que nous demanderons des jetons d'accès pour cette ressource API (API Encore).
Après avoir mis à jour le LogtoConfig
, si un utilisateur est déjà connecté, il doit se déconnecter puis se reconnecter pour que les nouveaux paramètres LogtoConfig
prennent effet.
Une fois l'utilisateur connecté, vous pouvez utiliser la méthode getAccessToken
fournie par le SDK Logto React pour obtenir un jeton d'accès permettant d'accéder à des ressources API spécifiques. Par exemple, pour accéder à l'API Encore, nous utilisons https://api.encoreapp.com
comme identifiant de ressource API.
Ajoutez ensuite ce jeton d'accès aux en-têtes de la requête en tant que champ Authorization
dans les requêtes ultérieures.
C'est tout, vous avez intégré avec succès Logto à votre application Encore.
Explorer plus
Si vous souhaitez utiliser plus de fonctionnalités de Logto dans Encore, vous pouvez consulter les liens suivants pour plus d'informations :
- Combinez les revendications de jeton personnalisées de Logto pour définir des données utilisateur personnalisées dans le gestionnaire d'authentification
- Utilisez les fonctionnalités RBAC de Logto pour ajouter une prise en charge de l'autorisation à votre service API Encore. Le didacticiel d'intégration React montre également comment ajouter des informations
scope
à votre jeton d'accès (notez que vous devez vous reconnecter après avoir mis à jour la configuration Logto) - Construisez votre application multi-tenant avec le service API Encore en utilisant des jetons d'organisation, référez-vous à Construire une application SaaS multi-tenant avec Logto