Français
  • auth
  • intégration
  • oauth
  • oidc
  • identité

Simplifiez l'authentification OAuth et OIDC avec Logto

Notre communauté a exprimé son intérêt pour l'utilisation de Logto en tant que fournisseur d'identité pour certains produits, tels que les plugins Outline ou ChatGPT. En théorie, Logto peut servir de fournisseur OAuth ou OIDC (OpenID Connect) tant que le produit que vous souhaitez intégrer prend en charge l'un de ces protocoles.

Gao
Gao
Founder

Logto est une solution d'identité facile à utiliser qui offre toutes les fonctionnalités nécessaires. Il prend en charge diverses méthodes de connexion comme les noms d'utilisateur, les emails, les numéros de téléphone et les connexions sociales populaires telles que Google et GitHub. Que vous soyez un particulier ou une entreprise de toute taille, Logto offre la solution parfaite de gestion des identités et des accès clients (CIAM) adaptée aux besoins spécifiques de votre projet.

Introduction

Notre communauté a exprimé son intérêt pour l'utilisation de Logto en tant que fournisseur d'identité pour certains produits, tels que les plugins Outline ou ChatGPT. En théorie, Logto peut servir de fournisseur OAuth 2.0 (OAuth) ou OpenID Connect (OIDC) tant que le produit que vous souhaitez intégrer prend en charge l'un de ces protocoles.

Dans cet article, nous proposons un tutoriel général pour les intégrations OAuth ou OIDC en utilisant Logto comme fournisseur d'identité. De plus, nous fournissons des tutoriels dédiés pour des intégrations spécifiques, y compris :

Bien que certains détails puissent varier selon les produits, la configuration fondamentale reste générique. Si vous avez des questions ou besoin d'aide supplémentaire, nous vous encourageons à rejoindre notre serveur Discord pour continuer la discussion.

Commençons !

Prérequis

Avant de commencer, assurez-vous d'avoir les éléments suivants :

  • Une instance Logto en cours d'exécution ou un accès à un compte Logto Cloud.
  • Un produit qui prend en charge un fournisseur d'identité OAuth ou OIDC tiers (appelé "le produit").

Configurer Logto

Si vous hébergez Logto vous-même, consultez la documentation "Get started" de Logto pour configurer votre instance Logto.

Ouvrez la Console Logto en accédant à l'URL https://cloud.logto.io/ si vous utilisez Logto Cloud, ou utilisez le point de terminaison que vous avez configuré pour l'hébergement local.

Créer une application

Allez dans l'onglet "Applications" et cliquez sur "Créer une application".

L'onglet "Applications" de la Console Logto

Dans la fenêtre modale qui apparaît, choisissez "Web traditionnel" et fournissez un nom d'application, tel que "Mon application". Cliquez sur "Créer une application".

La fenêtre modale "Créer une application" montre plusieurs types d'application

Vous serez dirigé vers une page de tutoriel dans Logto. Cliquez sur "Passer" dans le coin supérieur droit pour accéder à la page de détails de l'application.

Une page de détails d'application

Configurer l'URI de redirection

Dans la section "URIs de redirection", entrez la valeur fournie dans la documentation du produit. En général, elle est dynamique en fonction de votre ID ou de la configuration du point de terminaison dans le produit. Par exemple, dans les plugins ChatGPT, l'URI de redirection est :

https://chat.openai.com/aip/[your-plugin-id]/oauth/callback

Si votre ID de plugin est foo123, la valeur devrait être :

https://chat.openai.com/aip/foo123/oauth/callback

La section de configuration "URIs de redirection"

Alternativement, elle peut être appelée "URL de redirection," "URI de rappel," ou "URL de rappel.”

Optionnel : Assurez-vous que Logto délivre un Refresh Token

Certains produits peuvent nécessiter un Refresh Token lors de l'envoi de requêtes d'échange de jetons à Logto. Pour OAuth, vous devez juste vous assurer que le champ offline_access est inclus. Selon le protocole OIDC, par défaut, le produit doit également ajouter le paramètre prompt=consent dans la requête d'autorisation initiale pour le flux de code d'autorisation ; sinon, aucun Refresh Token ne sera délivré.

Si le produit utilise OAuth ou n'ajoute pas le paramètre prompt=consent ou le champ offline_access mais nécessite un Refresh Token (par exemple, les plugins ChatGPT), faites défiler jusqu'à la section "Paramètres avancés" et activez "Toujours délivrer un Refresh Token."

Le commutateur "Toujours délivrer un Refresh Token"

C'est tout !

Cliquez sur le bouton "Enregistrer les modifications" en bas. Gardez cette page ouverte car elle sera utile pour une configuration plus poussée.

La barre d'actions montre un bouton "Enregistrer les modifications"

Configurez le produit

Suivez les étapes décrites dans la documentation du produit pour la configuration OAuth ou OIDC.

Configuration de base

La plupart des valeurs de configuration requises peuvent être trouvées sur la page de détails de l'application Logto. Certains noms peuvent avoir des alias, donc référez-vous au tableau ci-dessous pour référence :

Nom LogtoAliasUtilisation
ID de l'applicationID de l'application, ID client
Secret de l'applicationSecret de l'application, Secret client
URI de redirectionURL de redirection, URI de rappel, URL de rappelRedirection après connexion
URIs de redirection après déconnexionURL de redirection après déconnexion, URI de redirection (déconnexion), URL de redirection (déconnexion)Redirection après déconnexion
Point de terminaison d'autorisationURI d'autorisation, URL d'autorisation, Point d'autorisation, URL d'auth, URI d'authAuthentification initiale
Point de terminaison de jetonURL de jeton, URI de jetonDemande de jeton
Point de terminaison utilisateurURL utilisateur, URI utilisateur, Point d'information utilisateur, URL d'information utilisateur, URI d'info utilisateurRécupérer les informations de l'utilisateur actuel

Pour les produits modernes, un "point de terminaison de découverte" peut être suffisant. Dans ce cas, remplacez auth par .well-known/openid-configuration dans le point de terminaison d'autorisation. Par exemple, si le point de terminaison d'autorisation est https://default.logto.app/oidc/auth, le point de terminaison de découverte serait https://default.logto.app/oidc/.well-known/openid-configuration.

Optionnel : Configuration de la portée

Si le produit prend en charge l'OIDC ou nécessite qu'un jeton ID soit délivré, ajoutez openid profile à la configuration de la portée. Reportez-vous au tableau revendication-portée ci-dessous :

RevendicationTypePortée requise
subchaîneopenid
nomchaîneprofile
nom d'utilisateurchaîneprofile
photochaîneprofile
emailchaîneemail
email vérifiébooléenemail
numéro de téléphonechaînephone
numéro de téléphone vérifiébooléenphone

Point de contrôle : Testez l'intégration Logto

Cliquez sur le bouton de connexion dans le produit, vous serez dirigé vers l'expérience de connexion Logto.

Expérience de connexion Logto

Si tout est correctement configuré, une fois que vous avez terminé le processus de connexion ou d'inscription dans Logto, vous serez redirigé vers le produit sans aucune erreur.

Cela conclut notre guide pour simplifier l'authentification OAuth et OIDC avec Logto. Si vous rencontrez des problèmes lors de l'intégration, n'hésitez pas à nous contacter par email à [email protected] ou rejoignez notre serveur Discord !

Lectures complémentaires