Application tierce (OAuth / OIDC)
L'intégration d'applications tierces de Logto vous permet d'utiliser Logto comme Fournisseur d’identité (IdP) pour des applications externes.
Un Fournisseur d’identité (IdP) est un service qui vérifie les identités des utilisateurs et gère leurs identifiants de connexion. Après avoir confirmé l'identité d'un utilisateur, l'IdP génère des jetons d’authentification ou des assertions et permet à l'utilisateur d'accéder à diverses applications ou services sans avoir à se reconnecter.
Contrairement aux applications que vous avez créées dans le guide Intégrer Logto à votre application qui sont développées et entièrement contrôlées par vous, les applications tierces sont des services indépendants développés par des développeurs externes ou des partenaires commerciaux.
Cette approche d'intégration est bien adaptée aux scénarios métier courants. Vous pouvez permettre aux utilisateurs d'accéder à des applications partenaires en utilisant leurs comptes Logto, tout comme les utilisateurs d'entreprise se connectent à Slack avec Google Workspace. Vous pouvez également créer une plateforme ouverte où les applications tierces peuvent ajouter la fonctionnalité "Se connecter avec Logto", similaire à "Se connecter avec Google".
Logto est un service d'identité construit sur le protocole OpenID Connect (OIDC), offrant des capacités d’authentification (Authentication) et d’autorisation (Authorization). Cela rend l'intégration d'une application tierce OIDC aussi simple qu'une application web traditionnelle.
Ainsi, puisque OIDC s'appuie sur OAuth 2.0 en ajoutant une couche d’authentification, vous pouvez également intégrer une application tierce en utilisant le protocole OAuth.
Créer une application tierce dans Logto
- Rendez-vous sur Console > Applications.
- Cliquez sur le bouton "Créer une application". Sélectionnez "Application tierce" comme type d'application et choisissez l'un des protocoles d'intégration suivants :
- OIDC / OAuth
- Sélectionnez un type d'application en fonction du type de l'application tierce :
- Web traditionnel : Applications rendues côté serveur (ex. Node.js, PHP, Java) pouvant stocker un secret client en toute sécurité côté serveur.
- Application monopage (SPA) : Applications rendues côté client (ex. React, Vue, Angular) qui s'exécutent entièrement dans le navigateur et ne peuvent pas stocker de secrets en toute sécurité.
- Native : Applications mobiles ou de bureau (ex. iOS, Android, Electron) qui s'exécutent sur les appareils des utilisateurs.
- Saisissez un nom et une description pour votre application et cliquez sur le bouton "Créer". Une nouvelle application tierce sera créée.
Toutes les applications tierces créées seront répertoriées sur la page Applications sous l’onglet "Applications tierces". Cette organisation vous aide à les distinguer de vos propres applications, facilitant ainsi la gestion de toutes vos applications en un seul endroit.
Guide d'intégration
Trouver les configurations de l'application
Sur la page de détails de l'application, vous pouvez trouver le Client ID, le Client secret (pour les applications web traditionnelles uniquement), et les points de terminaison OIDC nécessaires à l'intégration.
Si le service tiers prend en charge la découverte OIDC, fournissez simplement le point de terminaison de découverte. Sinon, cliquez sur Afficher les détails des points de terminaison pour voir tous les points de terminaison, y compris le point de terminaison d’autorisation et le point de terminaison de jeton.
Intégrer avec des services prenant en charge un IdP tiers
Si vous connectez un service ou un produit qui prend en charge nativement la configuration d'un fournisseur d'identité externe (ex. plateformes SaaS d'entreprise, outils de collaboration), la configuration est simple :
- Ouvrez la page de configuration IdP ou SSO du service.
- Copiez le Client ID (et le Client secret si nécessaire) depuis Logto et collez-les dans la configuration du service.
- Fournissez le point de terminaison de découverte si le service prend en charge la découverte automatique OIDC, ou copiez manuellement le point de terminaison d’autorisation et le point de terminaison de jeton.
- Copiez l’URI de redirection depuis la page de configuration du service et ajoutez-le aux URI de redirection autorisés de votre application Logto.
- Configurez les portées (scopes) si le service le permet. Puisque Logto est un fournisseur OIDC, incluez la portée
openidsi vous devez authentifier les utilisateurs (donne accès à un jeton d’identifiant et au point de terminaison UserInfo). La portéeopenidest facultative si vous n'avez besoin que d'un accès aux ressources OAuth.
Le service gérera automatiquement le flux OAuth / OIDC une fois configuré.
Intégrer via le protocole OAuth / OIDC
Si une application tierce doit s'intégrer à Logto en tant qu’IdP de manière programmatique, elle doit implémenter le flux d’autorisation par code standard. Nous recommandons d'utiliser une bibliothèque cliente OAuth 2.0 / OIDC pour votre langage de programmation afin de gérer l'implémentation.
- Web traditionnel
- Application monopage / Native
Les applications web traditionnelles sont des clients confidentiels qui peuvent stocker un secret client en toute sécurité côté serveur. Voir flux d’autorisation par code pour tous les détails d’implémentation.
Étapes clés :
- Initier l’autorisation : Redirigez l'utilisateur vers le point de terminaison d’autorisation de Logto avec
client_id,redirect_uri,response_type=codeetscope. - Gérer le rappel : Recevez le
coded’autorisation depuis la redirection. - Échanger les jetons : Depuis votre backend, effectuez une requête POST vers le point de terminaison de jeton avec le code, le
client_idet leclient_secret.
Les applications monopages et les applications natives sont des clients publics qui ne peuvent pas stocker de secrets en toute sécurité. Au lieu d'utiliser un secret client, ces applications doivent utiliser PKCE (Proof Key for Code Exchange) pour une autorisation sécurisée. Voir flux d’autorisation par code et PKCE pour tous les détails d’implémentation.
Étapes clés :
- Générer les paramètres PKCE : Créez un
code_verifieret dérivez uncode_challenge(SHA-256). - Initier l’autorisation : Redirigez l'utilisateur vers le point de terminaison d’autorisation avec
code_challengeetcode_challenge_method=S256. - Gérer le rappel : Recevez le
coded’autorisation depuis la redirection. - Échanger les jetons : Effectuez une requête POST vers le point de terminaison de jeton avec le code et le
code_verifieroriginal.
Écran de consentement pour les applications tierces OIDC
Pour des raisons de sécurité, toutes les applications tierces OIDC seront redirigées vers un écran de consentement pour l’autorisation de l’utilisateur après leur authentification par Logto.
Toutes les permissions de profil utilisateur demandées par l’application tierce, les portées de ressources API, les permissions d’organisation et les informations d’appartenance à l’organisation seront affichées sur l’écran de consentement.
Ces permissions demandées ne seront accordées à l’application tierce qu’après que l’utilisateur ait cliqué sur le bouton "Autoriser".

Actions complémentaires
Découvrez comment gérer les permissions pour votre application tierce OIDC.
Personnalisez l’apparence de l’écran de consentement pour refléter votre identité de marque et offrir une expérience utilisateur cohérente.
FAQ
Comment s’assurer que les utilisateurs ne peuvent accorder que les permissions qu’ils possèdent réellement sur l’écran de consentement ?
Logto utilise le Contrôle d’accès basé sur les rôles (RBAC) pour gérer les permissions des utilisateurs. Sur l’écran de consentement, seules les portées (permissions) déjà attribuées à l’utilisateur — via ses rôles — seront affichées. Si une application tierce demande des portées que l’utilisateur ne possède pas, celles-ci seront exclues afin d’éviter tout consentement non autorisé.
Pour gérer cela :
- Définissez des rôles globaux ou rôles d’organisation avec des portées spécifiques.
- Attribuez des rôles aux utilisateurs selon leurs besoins d’accès.
- Les utilisateurs hériteront automatiquement des portées de leurs rôles.
Ressources associées
Cas d’usage : Intégrer Apache Answer pour lancer une communauté pour vos utilisateurs
Utiliser Logto comme fournisseur d’identité tiers (IdP)